为了账号安全,请及时绑定邮箱和手机立即绑定

Sqlite3的DateTime函数中的查询参数绑定

Sqlite3的DateTime函数中的查询参数绑定

慕哥6287543 2023-03-08 10:42:50
我正在使用 python 并尝试按如下方式插入到 sqlite3 表中:database.execute("INSERT INTO EXAMPLE VALUES (?, ?, DATETIME('now','+? seconds'), ?);", (id, statement, time_duration, access))我得到以下异常:ProgrammingError: Incorrect number of bindings supplied. The current statement uses 3, and there are 4 supplied.我相信这是因为出于某种原因,查询参数绑定在DATETIME('now','+? seconds);. 如果我在查询中硬编码 +60 秒左右,这很好用。有没有办法让 sqlite3 在那里插入提供的绑定?
查看完整描述

1 回答

?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

占位?符必须像这样连接:

INSERT INTO EXAMPLE VALUES (?, ?, DATETIME('now', ? || ' seconds'), ?);

+在这种情况下不需要。

此外,以与提供的值相同的顺序包含列名也是一个好习惯:

INSERT INTO EXAMPLE(col1, col2, col3, col4) VALUES (?, ?, DATETIME('now', ? || ' seconds'), ?);



查看完整回答
反对 回复 2023-03-08
  • 1 回答
  • 0 关注
  • 72 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信