最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何在使用nodejs的mariadb中批量插入?

IT培训 admin 4浏览 0评论

如何在使用nodejs的mariadb中批量插入?

每当我尝试运行我的代码时,这表明列计数与错误不匹配。

values=[
    [{id:12227722345,name:"dgssssdavgsgfv",pass:"cvhsssssadfvugod"}],
    [{id:12,name:"ddd",pass:"cvh"}]
   ];

c.query('insert into Hash.asn(userid,username,password) values (?,?,?)',[values],function(err,rows)
{
  if (err)
    console.log(err);

  c.query('commit');
  console.log(rows);

}); 

错误:

{ [Error: Column count doesn't match value count at row 1] code: 1136 }
回答如下:

如果有人仍然想知道这一点,你可以使用connection.batch()来执行批量查询。

connection.beginTransaction();
connection.query("INSERT INTO BASKET(customerId) values (?)", [1], (err, res) => {
   //must handle error if any
   const basketId = res.insertId;
   try {
     connection.batch("INSERT INTO basket_item(basketId, itemId) VALUES (?, ?)",[
         [basketId, 100],
         [basketId, 101],
         [basketId, 103],
         [basketId, 104],
         [basketId, 105]
     ]);
     //must handle error if any
     connectionmit();
     } catch (err) {
     connection.rollback();
     //handle error
     }
});

https://github/MariaDB/mariadb-connector-nodejs/blob/master/documentation/batch.md

如何在使用nodejs的mariadb中批量插入?

每当我尝试运行我的代码时,这表明列计数与错误不匹配。

values=[
    [{id:12227722345,name:"dgssssdavgsgfv",pass:"cvhsssssadfvugod"}],
    [{id:12,name:"ddd",pass:"cvh"}]
   ];

c.query('insert into Hash.asn(userid,username,password) values (?,?,?)',[values],function(err,rows)
{
  if (err)
    console.log(err);

  c.query('commit');
  console.log(rows);

}); 

错误:

{ [Error: Column count doesn't match value count at row 1] code: 1136 }
回答如下:

如果有人仍然想知道这一点,你可以使用connection.batch()来执行批量查询。

connection.beginTransaction();
connection.query("INSERT INTO BASKET(customerId) values (?)", [1], (err, res) => {
   //must handle error if any
   const basketId = res.insertId;
   try {
     connection.batch("INSERT INTO basket_item(basketId, itemId) VALUES (?, ?)",[
         [basketId, 100],
         [basketId, 101],
         [basketId, 103],
         [basketId, 104],
         [basketId, 105]
     ]);
     //must handle error if any
     connectionmit();
     } catch (err) {
     connection.rollback();
     //handle error
     }
});

https://github/MariaDB/mariadb-connector-nodejs/blob/master/documentation/batch.md

发布评论

评论列表 (0)

  1. 暂无评论