我一直在尝试使用 pg8000 与我的 SQL 服务器进行交互,但由于某种原因,它不能正确接受参数。它似乎确实可以识别参数样式,然后知道将其更改为 PostgreSQL 参数,但它似乎从未传递过参数。我查看了此处的文档示例(链接)以获取示例,但它们不起作用。这里有些例子:
query = """
SELECT *
FROM schema.table_name
"""
conn = pg8000.connect(**credential_dict)
cursor = conn.cursor()
cursor.execute(query)
这个例子有效。接下来的两个不:
query = """
SELECT *
FROM %s
"""
conn = pg8000.connect(**credential_dict)
cursor = conn.cursor()
cursor.execute(query, 'schema.table_name')
query = """
SELECT *
FROM %s
"""
conn = pg8000.connect(**credential_dict)
cursor = conn.cursor()
cursor.execute(query, ('schema.table_name',))
这些查询失败,但我得到的错误说错误是$1
pg8000 将其转换%s
为。
我究竟做错了什么?