此问题在此处已有答案:
Why do I get "TypeError: not all arguments converted during string formatting" when trying to use a string in a parameterized SQL query?(8个答案)
4小时前关门了。
我有这个代码:
ip = "127.0.0.1"
sql = "select count(*) from radacct where nasipaddress=%s"
cur.execute(sql,ip)
但是我得到一个错误
TypeError: not all arguments converted during string formatting
如何以正确的方式将参数传递给psycopg2?
1条答案
按热度按时间deyfvvtc1#
传递给
execute
的sql参数必须在元组或列表中,即使只有其中一个。这在文档中有说明:对于位置变量绑定,第二个参数必须始终是一个序列,即使它包含一个变量。记住,Python需要一个逗号来创建一个单个元素元组:
所以你需要这样做: