如何使用mysljs批量插入mySql和node.js

时间:2016-12-15 18:20:50

标签: mysql node.js bluebird

我无法使用node.js lib mysljs在我的数据库中使用批量插入。

我按照以下答案:

How do I do a bulk insert in mySQL using node.js

没有成功。

var sql = "INSERT INTO resources (resource_container_id, name, title, extension, mime_type, size) VALUES ?";

var values = [
  [1, 'pic1', 'title1', '.png', 'image/png', 500], 
  [1, 'pic2', 'title2', '.png', 'image/png', 700]];

return connection.query(sql, [values], (result) => {
    if (err) throw err;
    connection.end();
});

我一直收到错误:

 'You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near \'?\' at line 1' 

我也尝试使用蓝鸟宣传查询方法,但没有成功,我再次得到同样的错误。

4 个答案:

答案 0 :(得分:1)

尝试在问号附近使用()

var sql = "INSERT INTO resources (resource_container_id, name, title, extension, mime_type, size) VALUES (?) ";

答案 1 :(得分:0)

尝试删除values

周围的方括号

答案 2 :(得分:0)

你需要用重音符(反引号)标记你的键,如下所示:`key`

<table> <tr> <th>a</th> <th>b</th> </tr> </table>像这样:

query

答案 3 :(得分:0)

我只有在使用 connection.execute() 时才会遇到同样的问题,然后实际上是因为它没有为准备好的语句实现。

我改用 connection.query() 解决了这个问题。

不知道这个答案是否对任何人有帮助。

当我寻找答案时,它会帮助我。