Python調用Mysql

 最近在學習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")