Python調用Mysql
- 2020 年 1 月 6 日
- 筆記
最近在學習Python,發現Python的眾多類庫給Python開發帶來了極大的便利性。
由於項目中使用Mysql,就考慮嘗試使用Python調用Mysql,方便寫一些調試用的小程序代碼。花了半天差了些資料,自己動手,做了個簡單的demo,步驟如下:
1)到Python.org上查找所用的包,我下載的是mysql.connector。
2)代碼編寫,import mysql.connector:
主要分為5個步驟:
(a)連接數據庫: conn = mysql.connector.connect(host='localhost', user='root',passwd='pwd',db='test')
(b)獲取操作句柄:cursor = conn.cursor()
(c)執行sql:cursor.execute(sql)、cursor.executemany(sql, val)
(d)獲取查詢結果:alldata = cursor.fetchall()
(e)關閉連接:cursor.close()、conn.close()
下面是測試用代碼:僅供參考:
import os, sys, string
import mysql.connector
def main():
#connect to mysql
try:
conn = mysql.connector.connect(host='localhost', user='root',passwd='pwd',db='test')
except Exception, e:
print e
sys.exit()
# get cursor
cursor = conn.cursor()
# create table
sql = 'create table if not exists product(Prd_name varchar(128) primary key, Count int(4))'
cursor.execute(sql)
#insert one data
sql="insert into product(Prd_name, Count) values('%s', %d)" % ("ATG", 200)
try:
cursor.execute(sql)
except Exception, e:
print e
#insert some datas
sql = "insert into product(Prd_name, Count) values(%s, %s)"
val = (("PPS", 400), ("Jr",150), ("Smt", 25))
try:
cursor.executemany(sql, val)
except Exception, e:
print e
#quary data
sql = "select * from product"
cursor.execute(sql)
alldata = cursor.fetchall()
#print data
if alldata:
for rec in alldata:
print rec[0],rec[1]
cursor.close()
conn.close()
if __name__ == "__main__":
main()
print("nIt's OK")