0

我正在使用已配置为使用 以下功能进行连接的编码/数据库( https://www.encode.io/databases/database_queries/ ):postgresql+aiopg://DBUSER:DBPASS@1.2.3.4:1234/SOMEDB

async def get_table_sample(table_name: str, db: Database):
    result = await db.fetch_all("SELECT * FROM :table_name limit 100", values={"table_name": table_name})
    return result

运行时,抛出以下错误:

psycopg2.errors.SyntaxError: at or near "rally_iteration": syntax error
DETAIL:  source SQL:
SELECT * FROM 'rally_iteration' limit 100

注意 subbed 变量周围的引号。如果我对查询进行硬编码,"SELECT * from rally_iteration limit 100" 一切都会按预期工作。

任何帮助表示赞赏。谢谢!

4

1 回答 1

0

asyncpg 和许多其他 sql 库不支持 FROM 子句中的变量替换。

于 2020-10-07T13:59:25.353 回答