如何在python中将列表值传递给SQL查询

时间:2015-03-11 16:39:59

标签: python sql sqlite

您好我是python的初学者,我使用sqlite3作为数据库。

问题:我想插入/更新数据,但我不知道如何在SQL查询中传递列表值。

以下是我的列表值的示例:

['ABC', '60', '13999', [...]]
['BCD', '35', '124799', [...]]
['EFG', '699', '4799', [...]]
['PQR', '71', '139799', [...]]

我在数据库中有list[0]作为列名,而list[1]是列的值。

我想执行类似

的操作
Insert Into table(list[0]) Values(list[1])

提前感谢您的帮助

1 个答案:

答案 0 :(得分:1)

如果您是初学者,我建议您使用像peewee这样的ORM,它有很好的文档记录,比直接向数据库查询更容易。

但如果你更喜欢直接使用sqlite3,那么你有一个例子:

import sqlite3
conn = sqlite3.connect('your_db_name.db')
c = conn.cursor()
# create table:
c.execute('''CREATE TABLE _TABLE-NAME_(
         column_1 datatype, 
         column_2 datatype,
         [...]
         column_n datatype)''')
# Insert a row using list elements:
c.execute("INSERT INTO %s VALUES (%s,%s,%s)" % (list[0], (list[1], (list[2], (list[3],))
# Commit changes:
conn.commit()
# Close connection:
conn.close()