我在python中编写应用程序并使用sqlite。我有一个字符串列表,我想添加数据库,其中每个元素代表一些数据,它与将放置的列重合。
目前我有类似的东西
cursor.execute("""insert into credit
values ('Citi','5567','visa',6000,9.99,'23',9000)""")
我可以轻松添加字符串,但不知道如何添加列表中的变量。
答案 0 :(得分:9)
使用参数.execute()
:
query = """
INSERT INTO credit
(bank, number, card, int1, value, type, int2)
VALUES
(?, ?, ?, ?, ?, ?, ?)
"""
data = ['Citi', '5567', 'visa', 6000, 9.99, '23', 9000]
cursor.execute(query, data)
根据PEP249:
<强>
.execute(operation[,parameters])
强> :准备并执行数据库操作(查询或命令)。参数可以作为序列或映射提供,并且将绑定到操作中的变量。变量以特定于数据库的表示法指定(有关详细信息,请参阅模块的
paramstyle
属性)
检查paramstyle
:
>>> import sqlite3
>>> print sqlite3.paramstyle
qmark
qmark
表示您使用?
作为参数。