尝试使用pg.Client.query()
执行SELECT lo_creat(?)
时出错:"语法错误在或接近"("'。
"节点";12.16.1,";pg";8.0.2;PostgreSQL";12.0
const { Client } = require('pg');
...
const client = new Client({
host: <host>,
port: <port>,
database: <database>,
user: <user>,
password: <password>,
});
await client.connect();
await client.query("SET SCHEMA '<schema>'"); // everything is fine
await client.query('SELECT lo_creat(?)', [0x00060000]); // throws the error here
...
尝试通过pgAdmin4在我的手动连接上执行完全相同的查询,返回创建的oid
效果良好。
如果有任何帮助,我将不胜感激,提前谢谢。
这里的问题是使用错误的语法来传递参数。
应该使用$1
而不是?
。
await client.query('SELECT lo_creat($1)', [0x00060000]);
工作正常。