python字典插入到mysql

时间:2017-04-15 14:35:47

标签: python mysql dictionary

我正在尝试从字典中获取数据并将其插入到mysql数据库中。我有以下代码。



import pymysql

connect = pymysql.Connect(
    host='localhost',
    port=3306,
    user='root',
    passwd='my729501s',
    db='major',
    charset='utf8'
)
data = {'video_title': 'hanzi', 'id': 1, 'video_url': 'www.bad.com', 'image_url': 'www.baidu.com', 'subject_title': 'nothong'}
cursor = connect.cursor()
table = 'video_title'
cols = data.keys()
vals = data.values()
sql = "INSERT INTO %s (%s) VALUES(%s)" % (table, ",".join(cols), ",".join(vals))

cursor.execute(sql)

connect.commit()
connect.close()
cursor.close()



 enter image description here

1 个答案:

答案 0 :(得分:0)

这是因为您的列表vals中有一个整数。所以你需要将它转换成字符串。修改您的代码如下。

sql = "INSERT INTO %s (%s) VALUES(%s)" % (table, ",".join(cols), ",".join(str(x) for x in vals))