Python SQLite在查询中使用变量的最佳方法

时间:2015-03-06 07:20:11

标签: python sqlite

为什么我会收到此错误?

sqlite3.OperationalError: near "?": syntax error

当我运行时:

c.execute('UPDATE ? SET Quantity = Quantity + ? WHERE Date = ?', (table, amount, date))

但是当我跑这个时不是吗?

c.execute('UPDATE table1 SET Quantity = Quantity + ? WHERE Date = ?', (amount, date))

变量值是:

table = 'table1'
amount = 20
Date = '12/5/2014'

我正在尝试动态创建表,但是没有成功。

1 个答案:

答案 0 :(得分:1)

您不能对表名使用占位符。您必须使用普通的Python字符串格式或连接。