我有一个带有显式id
属性的js对象。像这样:
const data = {
user_id: null,
user_email: faker.internet.email()
};
user_id
的值为空,并且存在一个使用users
作为其主键的user_id
表。
我想正确插入此数据,希望knex
可以遵守主键递增规则。
这是我的代码:
async function insert(user: any) {
return await knex('users')
.insert(user)
.returning('*');
}
当我尝试插入此数据时,出现错误:
错误:“ user_id”列中的空值违反了非空约束
我该如何解决?
答案 0 :(得分:0)
您可以将user_id
的值设置为undefined
。然后它将插入数据并
遵守主键递增规则。
const data = {
user_id: undefined,
user_email: faker.internet.email()
};
检查users
表中插入的行。 user_id
的值为1