我试图执行一个简单的查询,但无论如何传递参数都会出现这个错误。
这是查询语句(我正在使用Trac db对象连接到一个数据库):
cursor.execute("""SELECT name FROM "%s".customer WHERE firm_id='%s'""" % (schema, each['id']))
模式和each ['id']都是简单字符串
print("""SELECT name FROM "%s".customer WHERE firm_id='%s'""" % (schema, each['id']))
结果:
SELECT name FROM "Planing".customer WHERE firm_id='135'
这里有一个错误是在firm_id=
后面漏了一个引号,但这样参数就被当作整数处理,而::text
也会导致同样的错误。
print("""SELECT name FROM "%s".customer WHERE firm_id='%s'""" % (schema, each['id']))
的输出吗? - Nigel Tufnel