Nodejs链接Mysql批量添加、批量修改、批量删除
文章 2022 0 0 0
发布时间:2019年12月06日

概述

做为前端人员开发nodejs,还是有点吃力的,毕竟是要跟数据库对接,需要掌握sql查询,这里介绍一下node中mysql怎么样批量添加,批量修改,批量删除。

Nodejs链接Mysql

const mysql = require('mysql')var connection = mysql.createConnection({
    host     : 127.0.0.1,
    user     : 'root',
    password : 'root',
    port: '3306',
    database: '数据库名称',
    //multipleStatements: true //返回的值为key/value
});

批量添加

//批量添加
var userAddSql = 'INSERT INTO test(Name,Age) VALUES ? ';
//最后是"?"  不是 "(?,?)"
//参数
var param = [['xiaohong',8],['xiaolan',12]]
//执行sql   第二个参数要加"[]"
var query = connection.query(userAddSql,[param],function (err, result) {
    if(err){
        console.log('[INSERT ERROR] - ',err.message);
        return;
    }
    console.log('—————————————INSERT——————————————');
    console.log('INSERT ID:',result);
    console.log('————————————————————————————————-\n\n');
});
console.log(query.sql);
//关闭链接
connection.end();

这里的参数param批量添加一定要带[]不然会报错的,添加失败

批量删除

//批量删除
var userAddSql = 'DELETE FROM test WHERE id in (?) '; 
//最后是"?"  不是 "(?,?)"
//参数
var param = ['6,7,8,9']
//执行sql   第二个参数要加"[]"
var query = connection.query(userAddSql,[param],function (err, result) {
    if(err){
        console.log('[DELETE ERROR] - ',err.message);
        return;
    }
    console.log('—————————————DELETE ——————————————');
    console.log('DELETE ID:',result);
    console.log('————————————————————————————————-\n\n');
});
console.log(query.sql);
//关闭链接
connection.end();

多个删除我们要用到in后面的值是多个id比如:in(6,7,8,9)这样的格式所以自己处理拼接一下

for (var i = 0; i < idArr.length; i++) {
    getvalue += idArr[i] + ','
}
let getvalues = getvalue.substring(0, getvalue.length - 1)

getvalues是我们查询的id串

批量修改

//批量修改
var idArr = []
var userAddSql = ''
for (let i = 0; i < idArr.length; i++) {
    userAddSql+= 'UPDATE test set state = ' + state + ' where id = ' + utils.typeinteger(idArr[i]) + ';';
}
//参数
var param = []
//执行sql   第二个参数要加"[]"
var query = connection.query(userAddSql,param,function (err, result) {
    if(err){
        console.log('[UPDATE ERROR] - ',err.message);
        return;
    }
    console.log('—————————————UPDATE ——————————————');
    console.log('UPDATE ID:',result);
    console.log('————————————————————————————————-\n\n');
});
console.log(query.sql);
//关闭链接
connection.end();

批量修改参数我们没有想添加删除那样可以用多个数组去或者in,修改只能去循环参照修改,不过node中可以执行多个sql语句所以我们把sql拼起来一次执行即可

评论专区