我必须使用Python将具有整数值的列表插入到MySQL数据库表的列中。首先我试过
cur.execute("insert into time_Interval (name, time_interval_list) values (%s, %s)",\
# (user_name, interval_list))
where" interval_list"是列表变量,具有我想插入的值" time_interval_list" " time_Interval"的列表。代码正在运行但不插入值。然后我尝试this solution将代码更改为
var_string = ','.join('?' * len(interval_list))
cur.execute("insert into time_Interval (name, time_interval_list) values (%s, %s)",\
(user_name, var_string))
同样,代码工作正常但插入了问号列表。我无法找到解决方案。
如何正确执行此操作。任何建议将不胜感激
答案 0 :(得分:0)
尝试更改
var_string = ','.join('?' * len(interval_list))
到
var_string = ','.join(interval_list)
答案 1 :(得分:0)
以下代码帮助我使用Python将数据批量插入数据库表。
您可以先从要插入的数据中创建一个元组元组,如下所示
var_string = ','.join(cur.mogrify("(%s,%s)", x).decode('utf-8') for x in interval_list)
interval_list
将包括创建元组元组的name和time_interval_list值。然后运行exceute命令,将元组的元组作为值的输入。
cur.execute("INSERT INTO time_Interval (name, time_interval_list) VALUES " + var_string)
此命令可以非常快速地将数据大量插入数据库表。