首页 > 解决方案 > 使用节点 js 将多列和多行插入 SQL Server

问题描述

我正在尝试制作一个从 nosql 读取并插入 SQL Server 数据库的脚本。

那就是说我正在动态地阅读集合,所以我需要做一些事情来做类似的事情

var columns = [ 1, 2, 3, 4 ...]
var values = [a, b, c ,4 ...]
request.query("INSERT INTO TABLE (" + [columns] + ") VALUES ( " [values] ");"

我有一些多达 27 列的集合,我无法通过插入每个值来占用数据库,因为我有 20.000.000 个寄存器要做......在事务中找不到任何可以做到这一点的东西,所以我将不胜感激任何建议

标签: sql-servernode.jsmultiple-columnsinsert-into

解决方案


首先从 npm 下载 sql server

npm 安装 mssql

然后尝试这样:

var sql = require("mssql");

    // config for your database
    var config = {
        user: 'sa',
        password: 'mypassword',
        server: 'localhost', 
        database: 'SchoolDB' 
    };

    // connect to your database
    sql.connect(config, function (err) {

        if (err) throw err;
          console.log("Connected!");
          var sql = "INSERT INTO customers (name, address) VALUES ?";
          var values = [
                    ['John', 'Highway 71'],
                        ['Peter', 'Lowstreet 4'],
                        ['Amy', 'Apple st 652'],
                        ['Hannah', 'Mountain 21'],
                        ['Michael', 'Valley 345'],
                        ['Sandy', 'Ocean blvd 2'],
                        ['Betty', 'Green Grass 1'],
                        ['Richard', 'Sky st 331'],
                        ['Susan', 'One way 98'],
                        ['Vicky', 'Yellow Garden 2'],
                        ['Ben', 'Park Lane 38'],
                        ['William', 'Central st 954'],
                        ['Chuck', 'Main Road 989'],
                        ['Viola', 'Sideway 1633']
                      ];
              con.query(sql, [values], function (err, result) {
                if (err) throw err;
                console.log("Number of records inserted: " + result.affectedRows);   }); });

推荐阅读