Asyncpg 不为查询提供参数

问题描述

add_domain_query = '''
    DO $$ BEGIN
    IF NOT EXISTS (SELECT * FROM bg_domains WHERE domain = ($1)) THEN
        INSERT INTO bg_domains(domain,date_add,bg_programs_id) VALUES (($1),'%s',%s);
    END IF;
    END $$;
''' % (data['last_updated'],record_program.get('id'))
await con.executemany(add_domain_query,domains)

asyncpg.exceptions._base.InterfaceError: the server expects 0 arguments for this query,1 was passed
HINT:  Check the query against the passed list of arguments.  Note that parameters are supported only in SELECT,INSERT,UPDATE,DELETE,and VALUES statements,and will *not* work in statements  like CREATE VIEW or DECLARE CURSOR.

在 var 域中 - 像 [(str_var,),...] 这样的数据,为什么要传递参数?

Python 3.8.5
异步pg 0.21.0

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...