python MySQLdb 字典(dict)結構數據插入mysql

背景:python

     有時候直接操做數據庫字段比較多,一個個寫比較麻煩,並且若是字段名跟數據庫一致,那生成爲字典後,是否能直接使用字典寫入數據庫呢,這樣會方便不少,這裏簡單介紹一種方法。數據庫

實例:blog

1. 假設數據庫表有以下字段:it

name,age,address,mobile,emailio

2. 拿到的字典數據以下:table

info = {'name': 'test', 'age': 23, 'address': 'beijing', 'mobile': 13712345678, 'email': 'test@test.com'}class

3. 寫入數據庫方法以下(${tablename}爲要插入的數據庫表名):test

import MySQLdb
db = MySQLdb.connect(host="", user="xx", passwd="xx", db="xx", port=xx)
cursor = db.cursor()
qmarks = ', '.join(['%s'] * len(info))
columns = ', '.join(info.keys())
try:
    qry = "Insert Into ${tablename} (%s) Values (%s);" % (columns, qmarks)
    cursor.execute(qry, info.values()) 
    db.commit()
except Exception, e:
    print(str(e))
    db.rollback
相關文章
相關標籤/搜索