我在Python 3.3中使用Sqlite3。我试图运行以下查询:
c.execute('INSERT OR REPLACE INTO system (id, date,code,number) VALUES
((select id from system where date=:date, code=:thiscode), :date,:thiscode,
coalesce((select profiles from system where date=:date, code=:thiscode), 1))',
{"date": mdate, "thiscode": thiscode})
该表用于跟踪一个月内发生的代码实例数。如果月份'日期/代码组合已经存在,然后将1添加到它的数字,否则使用数字= 1创建它。
给出的错误是无益的
sqlite3.OperationalError: near ",": syntax error
我猜测原因涉及子查询参数化,因为我还没有看到其他人使用它的例子,但我对建议持开放态度。
答案 0 :(得分:1)
where date=:date, code=:thiscode
这是什么意思? 我想你想写这个:
where date=:date and code=:thiscode