gpt4 book ai didi

python - OperationalError:接近 "%":Python 中的 sqlite3 语法错误

转载 作者:太空宇宙 更新时间:2023-11-04 04:19:49 25 4
gpt4 key购买 nike

我在 Python 中使用 sqlite3 包并尝试从名为 orders 的表中选择一个条目。我想获取列 order_date 的值以 18 结尾的条目(这是一个 varchar 列,其中该条目的实际值为“10/20/2018” ).

根据类似问题的指导,我构建了如下查询:

sql = """SELECT * FROM orders
WHERE order_date LIKE %s"""

args = ['%' + '18']

c.execute(sql, args)

但我得到了这个:

---------------------------------------------------------------------------
OperationalError Traceback (most recent call last)
<ipython-input-51-e6a345ebe6eb> in <module>
6 args = ['%' + '18']
7
----> 8 c.execute(sql, args)
9 conn.commit()
10

OperationalError: near "%": syntax error

我试过用多种方法构建查询,但每次都遇到同样的错误。根据我浏览过的其他问题,这应该可行。出了什么问题?

最佳答案

您应该使用 ? 作为绑定(bind)变量的占位符而不是 %s:

sql = """SELECT * FROM orders
WHERE order_date LIKE ?"""

关于python - OperationalError:接近 "%":Python 中的 sqlite3 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54701125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com