Python的Mysql connector封裝
[Python]代碼
#!/usr/bin/env python
#-*- coding:utf-8-*-
from mysql import connector
def connect():
config={
'host':'localhost',#默認127.0.0.1
'user':'root',
'password':'1111111',
'port':3306 ,#默認即為3306
'database':'test',
'charset':'utf8'#默認即為utf8
}
try:
return connector.connect(**config)
except connector.Error as e:
print('connect fail! {}'.format(e))
def execSql(cur, sql, data, isCommit = False):
cur.executemany(sql, data) if isinstance(data, list) else cur.execute(sql, data)
if isCommit:
conn.commit()
def insert(conn, tableName, datas):
sql = 'insert into `{0}` ({1}) values ({2})'
keys = []
placeHolders = []
data = datas
if isinstance(datas, list):
data = datas[0]
for key in data:
keys.append(key)
placeHolders.append('%('+key+')s')
sql = sql.format(tableName, ','.join(keys), ','.join(placeHolders))
id = -1
try:
cur = conn.cursor()
execSql(cur, sql, datas)
if not isinstance(datas, list):
id = cur.lastrowid #返回主鍵
conn.commit()
except connector.Error as e:
raise e
finally:
cur.close()
return id
def query(conn, sql, datas):
try:
cur = conn.cursor()
cur.execute(sql, datas)
except connector.Error as e:
raise e
return cur
if __name__ == '__main__':
testDict = {
'aa': 1,
'bb': 'aaa',
'cc': 'bbb',
'dd': 'ccc'
}
conn = connect()
print insert(conn, 'test_table', brandDict) 本文由用戶 LasonyaHart 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!