第 0002 題:將 0001 題生成的 200 個激活碼(或者優惠券)保存到 MySQL 關係型數據庫中。
這道題主要是Python操作MySQL數據庫,其實只涉及到了插入操作,但是爲了熟悉其他操作,在代碼中增加了查詢。
遇到的主要問題有兩個:
1.如何加入自定義模塊 Python如何導入自定義模塊
2.數據庫的表和列命名的時候不能使用MySQL關鍵字,比如key,這個我剛開始沒發現,結果一直是語法錯誤
下面是代碼:
#coding=utf-8
import MySQLdb
from genkey import genKey
HOST = 'localhost'
USER = 'root'
PASSWORD = '1234'
PORT = 3306
DB = 'mysql'
#連接數據庫
conn = MySQLdb.connect(host =HOST,user=USER,passwd=PASSWORD,db=DB,port=PORT)
cur = conn.cursor()
#生成200組激活碼
list=[]
for i in range(200):
list.append(genKey.randchoice_gen())
#將生成的激活碼插入到表中
for i in xrange(200):
sql = 'INSERT INTO randkey (rkey) VALUES (\'%s\')' % list[i]
cur.execute(sql)
conn.commit()
#查詢操作
sql="select * from randkey limit 10"
cur.execute(sql)
#查看excute執行後影響的行數
print cur.rowcount
result=cur.fetchall()
for row in result:
print row[0]
cur.close()
conn.close()