ファイル:コール(SQL文ファイル)
1 #インポートモジュール 2 インポートpymysql 。3 から SQL文をインポート * 4 位クラスの作成 。5 クラスKaoshi(オブジェクト) 。6 。7 #の初期化 。8 DEF __init__ (自己): 9 self.db = pymysql.connect( 10 =ホスト' ローカルホスト' 、 。11 = 3306ポート、 12は =ユーザー' ルート' 、 13は = passwdの' 1234 ' 、 14 DB = ' テスト' 15 ) 16 self.cur = self.db.cursor() 。17 18である 。#オブジェクトインスタンスが破棄されたときに、カーソルが閉じられ、データベース 19。 DEF __del__ (自己): 20 self.cur.close () 21は self.db.close() 22である 23は #1 インサート 24 DEFのinsert01(セルフ、Q1の) 25 、M = STR(タプル(Q1の)) 26が SQL = " インサート学生%のS値"%M 27 self.cur.execute(SQL) 28 self.db.commit() 29 30 #查询 31 デフselect02(自己、Q): 32 用の K、V でq.items(): 33 SQL = " SELECT * FROM学生%S = "%sの" '%(K、V) 34 self.cur.execute(SQL) 35 のための I におけるself.cur: 36 プリント(I) 37 プリント() 38 RET = self.cur.fetchall () 39 #タプルの複数返さ 40 IF RET: 41である プリント(RET) 42であり、 そうでなければ: 43れる プリント(' S%が見つかりません'%のV)が 44であり、 45 #の更新 46である DEFのupdate03(セルフ、Q1を、Q2): 47 用の K1、V1 でq1.items(): 48 SQL = " 更新学生%のSET = S '%S'。"%(K1、V1) 49 50 のために K2、V2 にq2.items(): 51は、 SQL = + "ここで、%S =%dの"%(K2、V2) 52 プリント(SQL) 53 self.cur.execute(SQL) 54 self.db.commit() 55 56 #删除 57 DEF delete04(自己、Q): 58 プリント(Q) 59 のための K、V でq.items(): 60 SQLは= " %S = '%S'学生から削除"%(K、V) 61 self.cur.execute(SQL) 62 self.db .commit() 63 64 #查询 65 DEFのcount05(セルフ、Q): 66 印刷(Q) 67 のための K、V でq.items(): 68 SQL = ' SELECT COUNT(*)学生%S = "%S"から。'%(K、 V) 69 self.cur.execute(SQL) 70 RET = self.cur.fetchall() 71で 印刷(RET) 72 73であり、 印刷(' の量にクエリ:' 、RET [0] [0]) 74 75 #5挿入されたデータ 76 DEF insert06(セルフ、Q): 77 プリント(Q) 78 self.cur.execute(Q) 79 self.db.commit() 80 81 #删除 82 デフdelete07(自己): 83 #cur.execute( '学生から削除') 84 self.cur.execute (' 学生を切り捨てる' ) 85 self.db.commit() 86 87 88 KS = KaoShi() 89 ks.insert01(Q1) 90 ks.select02(Q2) 91 ks.update03(q3_1、q3_2) 92 ks.delete04( Q2) 93 ks.count05(Q5) 94 ks.insert06(Q6) 95 ks.delete07()
ファイルII:という名前(sqls.py)
= Q1を[0、' ジョン・ドウ'、12、1、' 漢'、' 8×8次元基底学校の近くに999 '、13899998888 ] Q2 = { ' 名前':' 王ウー' } Q3_1 = { ' 名前':' ジョン・ドウ' } Q3_2 = { ' 年齢':12である} Q5 = { ' 国家':' 中国語'} Q6 = ""」 INSERT学生値 (0、 '太陽越'、18、1、 '漢'、 '北京'、13899994444)、 (0、 'モア'、16、1、 'フル'、 '上海'、13899994488)、 (0 '祖'、98、1、 'モンゴル'、 '深'、13899004422)、 (0、 '劉NENG'、70、1、 '契丹'、 '大連'、13899997799)、 (0、 '曹操' 、40、1、 '中国'、「天津"13899994400); " "" """ 。表学生を作成します( ID int型主キーAUTO_INCREMENT、 名前VARCHAR(20)と、 年齢tinyint型、 性別の列挙型("男性""女性")、 国家チャー(5)、13である。 アドレスVARCHAR(30)、 電話VARCHAR(20です) ); " "" X = { ' CUI ':" 熱心なユーザ" } のためにK、中及びx.items(): プリントの(K) プリント(中)