相关疑难解决方法(0)

SQLite参数替换和引号

我有这条线可以正常工作:

c.execute('select cleanseq from cleanseqs WHERE newID="%s"'%name)
Run Code Online (Sandbox Code Playgroud)

但我想使用SQLite参数替换而不是字符串替换(因为我在这里看到这更安全).

这是我的(失败)尝试:

t = (name,)
c.execute('select cleanseq from cleanseqs WHERE newID="?"',t)
Run Code Online (Sandbox Code Playgroud)

但是这条线返回:

'提供的绑定数量不正确.当前语句使用0,并且有1个提供.

所以我的陈述的左边部分不起作用.我提供一个绑定(名称,在t)但似乎没有解析问号(?).如果我删除引用的引号,它就可以了.但我希望引号留在那里,因为我记得有些情况我需要它们.

所以问题是:我如何转换这一行:

c.execute('select cleanseq from cleanseqs WHERE newID="%s"'%name)
Run Code Online (Sandbox Code Playgroud)

python sqlite

11
推荐指数
3
解决办法
2万
查看次数

标签 统计

python ×1

sqlite ×1