gpt4 book ai didi

python - 如何在对 SQLite3 的 Python 调用中获取可变长度占位符

转载 作者:IT王子 更新时间:2023-10-29 06:20:10 27 4
gpt4 key购买 nike

有没有办法在 SQL 查询中使用可变长度占位符?

现在用一个三元组,我写这样的东西:

c.execute('SELECT * FROM table WHERE word IN (?, ?, ?)', tup)

但是如果 tup 可以有不同的长度,可能是 4 元组或 2 元组呢?在这种情况下是否有使用占位符的语法?如果不是,编写代码的首选方法是什么?

最佳答案

你必须做这样的事情(使用你的例子):

tup = ... # some sequence/tuple of unknown length
sql = 'SELECT * FROM table WHERE word IN (%s)' % ', '.join('?' for a in tup)
c.execute(sql, tup)

通过这种方式,您可以在 sqlite3 模块解析之前动态创建占位符列表并格式化 SQL 字符串。

关于python - 如何在对 SQLite3 的 Python 调用中获取可变长度占位符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7991183/

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