MySql 插入多行时自动递增不起作用
MySql auto-increment not working while inserting multiple rows
我在 MySql 数据库中插入多行 table 正在插入第一行,但剩下的显示错误:
[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查询是动态生成的。
现在我得到了解决方案,我犯的错误是我使用 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
none 列具有 属性 primary-key
。 我认为这可能是数据库的行为或node-orm2也可能是原因,所以它不接受完全相同的值。
实际上,所有记录都不会相同。如果您还有其他要点,请告诉我您的想法。谢谢
我在 MySql 数据库中插入多行 table 正在插入第一行,但剩下的显示错误:
[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查询是动态生成的。
现在我得到了解决方案,我犯的错误是我使用 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
none 列具有 属性 primary-key
。 我认为这可能是数据库的行为或node-orm2也可能是原因,所以它不接受完全相同的值。
实际上,所有记录都不会相同。如果您还有其他要点,请告诉我您的想法。谢谢