python3將變量寫入SQL語句的實現(xiàn)方式
試了一下python操作數(shù)據(jù)庫,準備將前端傳回來的用戶名和密碼寫入表中
試了半天不會把變量加在在sql語句里面
網(wǎng)上搜索了一下,要用元組來傳遞多個參數(shù)
sql = "insert into userinfo values(%s,%s)" cursor.execute(sql,(name,password))
補充拓展:python往mysql數(shù)據(jù)庫中寫入數(shù)據(jù)和更新插入數(shù)據(jù)
1. 連接mysql
import pymysql db = pymysql.connect(host='localhost', user='root', password='123456', port=3306, db='spiders') cursor = db.cursor() sql = 'select * from students;' cursor.execute(sql) cursor.close() db.close()
2. 多字段動態(tài)插入mysql數(shù)據(jù)庫中
import pymysql
db = pymysql.connect(host='localhost',user='root', password='123456', port=3306, db='spiders')
data = {
'id': '20180606',
'name': 'Lily',
'age': 20
}
table = 'students'
keys = ', '.join(data.keys())
values = ', '.join(['%s'] * len(data))
sql = 'INSERT INTO {table}({keys}) VALUES ({values})'.format(table=table, keys=keys, values=values)
try:
cursor.execute(sql, tuple(data.values()))
print('Successful')
db.commit()
except:
print('Failed')
db.rollback()
cursor.close()
db.close()
3. 數(shù)據(jù)更新插入mysql數(shù)據(jù)庫中
import pymysql
db = pymysql.connect(host='localhost',user='root', password='123456', port=3306, db='spiders')
data = {
'id': '20180606',
'name': 'Lily',
'age': 25
}
table = 'students'
keys = ', '.join(data.keys())
values = ', '.join(['%s'] * len(data))
sql = 'INSERT INTO {table}({keys}) VALUES ({values}) ON DUPLICATE KEY UPDATE'.format(table=table, keys=keys, values=values)
update = ','.join([" {key} = %s".format(key=key) for key in data])
sql += update
try:
cursor.execute(sql, tuple(data.values())*2)
print('Successful')
db.commit()
except:
print('Failed')
db.rollback()
cursor.close()
db.close()
以上這篇python3將變量寫入SQL語句的實現(xiàn)方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
python 內(nèi)置函數(shù)-range()+zip()+sorted()+map()+reduce()+filte
tensorflow實現(xiàn)讀取模型中保存的值 tf.train.NewCheckpointReader
利用Python將原始邊列表轉(zhuǎn)換為鄰接矩陣的過程
python學(xué)習(xí)-List移除某個值remove和統(tǒng)計值次數(shù)count
python3爬蟲學(xué)習(xí)之?dāng)?shù)據(jù)存儲txt的案例詳解

