我正在尝试使用2个python列表更新我的sqlite数据库。我有一个带有三个字段的sqlite数据库。姓名,号码,日期。我还有三个名字相似的python列表。我正试图找出一种方法来更新我的sqlite数据库与这两个列表中的数据。我可以创建db,甚至可以填充单个列,但我似乎无法正确更新它或根本没有。有没有办法同时INSERT
两个列表?而不是INSERT
单个列然后UPDATE
db与另一个?
这是我到目前为止所做的:
name_list = []
number_list = []
date = now.date()
strDate = date.strftime("%B %Y")
tableName = strDate
sqlTable = 'CREATE TABLE IF NOT EXISTS ' + tableName + '(name text, number integer, date text)'
c.execute(sqlTable)
conn.commit()
for i in name_list:
c.execute('INSERT INTO January2018(names) VALUES (?)', [i])
conn.commit()
我似乎无法超越这一点。我仍然需要添加另一个数据列表(number_list)并将日期附加到每一行。
以下是我的内容:
for i in number_list:
c.execute('UPDATE myTable SET number = ? WHERE name', [i])
conn.commit()
非常感谢任何帮助。如果您需要更多信息,请告诉我。
答案 0 :(得分:1)
您可以将executemany
与zip
:
c.executemany('INSERT INTO January2018 (name, number) VALUES (?, ?)', zip(name_list, number_list))
conn.commit()