我有这条线可以正常工作:
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)