我在数据库中插入多个条目的代码如下:
let model = [
{
Question: '1 + 1',
QuestionTypeId: 1,
Answer: '2',
QuizId: 1,
Options: null
},
{
Question: '1 + 2',
QuestionTypeId: 1,
Answer: '3',
QuizId: 1,
Options: null
}
]
let result = knex('Items').insert(model)
但它会像这样在数据库上插入两次数据
有人可以向我解释为什么在数据库中再插入2行?谢谢!
您粘贴的代码实际上没有插入任何内容(永远不会触发查询构建器)。
除非您告诉它插入两次,否则Knex不会插入数据两次。也许在您没有显示的代码中,您正在为变量.then()
中存储的查询构建器调用result
两次。
这可能会更好:
let model = [
{
Question: '1 + 1',
QuestionTypeId: 1,
Answer: '2',
QuizId: 1,
Options: null
},
{
Question: '1 + 2',
QuestionTypeId: 1,
Answer: '3',
QuizId: 1,
Options: null
}
];
let result = await knex('Items').insert(model);