我在MySql数据库表中插入多行,第一行正在插入但是为了剩下它显示错误:
[Error: ER_DUP_ENTRY: Duplicate entry '2' for key 'PRIMARY']
code: 'ER_DUP_ENTRY',
errno: 1062,
sqlState: '23000',
index: 1,
这是id
字段的结构:
如果我插入一行自动增量工作文件。
我无法纠正这个问题。请帮忙。感谢。
修改
我正在使用node-rom2,代码是
modelObj.create(arrayOfObjects, function (err, result) {
if (err) {
console.log("The error is :", err);
}
else {
response.status = 'success';
response.data = result;
}
next(response);
});
SQL查询是动态生成的。
答案 0 :(得分:0)
现在我得到了解决方案,我正在做的错误是我使用这样的for loop
生成数据:
var data = { name:'john', age:24, email:'abc@abcd.com'};
var arrayOfObjects= [];
for (var i = 0; i < 4; i++){
arrayOfObjects.push(data);
}
modelObj.create(arrayOfObjects, function (err, result) {
if (err) {
console.log("The error is :", err);
}
else {
response.status = 'success';
response.data = result;
}
next(response);
});
所以在这种情况下每条记录都相同。但是,除id
之外的列没有属性primary-key
。 我认为它可能是数据库的行为,或者node-orm2也可能是的原因,因此它不接受完全相同的值。
实际上,所有记录都不一样。如果您有其他观点,请告诉我您的想法。感谢。