Node.js MySQL批量插入操作失败
下面是我的大规模插入MYSQL数据库的代码Node.js MySQL批量插入操作失败,mysql,sql-server,node.js,Mysql,Sql Server,Node.js,下面是我的大规模插入MYSQL数据库的代码 connectionPool.getConnection(function(err, connection){ if(err) { winston.log('info', '------- ERROR while getting connection: ' + err.message); connection.release(); return; }
connectionPool.getConnection(function(err, connection){
if(err) {
winston.log('info', '------- ERROR while getting connection: ' + err.message);
connection.release();
return;
}
connection.query('INSERT INTO PollOptions (idPollOption, Option, PollId) values ?', [pollOptionsArray], function(err, rows){
if(err) {
winston.info('info', '----------------------- ERROR: ' + err);
connection.release();
return;
}
connection.release();
});
});
pollOptionsArray所在的位置
[
["POPE1lrKXMy9Q","Adam","POLL4yrFXzkcX"],
["POPVy-StXGJcm","Mike","POLL4yrFXzkcX"],["POPNkMSFmGy97","Lucy","POLL4yrFXzkcX"]
]
数据库表具有以下列
idPollOption,Option,PollId(全部为VARCHAR)
它给了我以下错误:
错误:错误:ER_PARSE_错误:您的SQL语法有错误;
检查与MySQL服务器版本对应的手册,了解
使用near'选项,PollId)值('POPE1lrKXMy9Q'的正确语法,
“Adam”、“POLL4yrFXzkcX”),(“POPVy-StXGJ”位于第1行
我甚至试着像这样硬编码我的sql输入:
var temp = [
['123', 'demian@gmail.com', 'POLLVJsBGIjYQ'],
['345', 'john@gmail.com', 'POLLVJsBGIjYQ'],
['567', 'mark@gmail.com', 'POLLVJsBGIjYQ'],
['678', 'pete@gmail.com', 'POLLVJsBGIjYQ']
];
但它仍然给了我同样的错误。我不明白我做错了什么。很明显,我的SQL语法在值上是不正确的,但补救方法是什么
我甚至试图删除pollOptions数组中的“[]”,但它也给了我同样的错误
知道这里发生了什么吗?所以我的语法没有问题。问题是名为“Option”的列。
显然,“Option”在MySQL中是一个保留关键字,因为我用它来命名我的列,这给我带来了麻烦。所以我的语法没有问题。问题是名为“Option”的列。 显然,“Option”在MySQL中是一个保留关键字,因为我用它来命名我的专栏,这给我带来了麻烦