以下插入出现错误:
return knex('accounts')
.returning('id')
.insert(account)
.then(ids => {
account.id = ids[0];
return account;
});
“(”或附近的语法错误
调试日志如下所示:
{
method: 'insert',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ 'Fidelity Mastercard' ],
__knexQueryUid: '7c0e3f8e-9de4-4a4d-8465-7f00e35a4701',
sql: 'insert into ("name") values (?) returning "id"',
returning: 'id'
}
我在做什么错了?
数据库是PostgrSQL,并且初始化如下所示:
const dbConfig = {
client: 'pg',
debug: true,
connection: {
host: 'localhost',
user: 'postgres',
password: 'docker',
database: 'mmm',
charset: 'utf8'
}
};
修改
请忽略此问题。我在编码时犯了一个愚蠢的错误。在上面的示例中,knex
实际上是一个返回knex
的函数。因此,呼叫应该是knex()('accounts')
。谜团解决了!
答案 0 :(得分:0)
从上面的编辑中可以看出,这是我的编码错误。