mysql - 如何获取多行json对象

标签 mysql json node.js

我的目标是将下面 JSON 对象中的字段写入 MySQL 数据库。

var dataRow = {
    Table: "promosbudget",
    Fields:[{
        ManagerID: "Jose",
        UserID: "ife",
        Budget: "50000",
        Year: "2015"
    },
    {
        ManagerID: "Jose",
        UserID: "fgs",
        Budget: "50000",
        Year: "2015"
    },
    {
        ManagerID : "Jose",
        UserID : "brz",
        Budget : "50000",
        Year : "2015"
    }]
};

我使用此命令来接收和写入数据:

app.post('/paramsjson', jsonParser, function(req, res) { 
    conMySQL.query('INSERT INTO ' + req.body.Table + ' SET ?',req.body.Fields,               
                 function(err,result) {
            console.log(result);
        }
    );
});

问题是我只能写入第一个 JSON 行,其他 2 行被省略。

我想问一下,当我需要导出一个大的JSON对象(100.000行)时,是否有推荐的方法可以做到这一点,是否需要进行循环并按顺序读取每一行?

预先感谢您的帮助!

最佳答案

尝试一步一步来。 不要直接插入数据库, 首先console.log输出,查看结果,尝试直接从代码插入。然后尝试将它们全部结合起来。

无论如何 - 我强烈建议使用 knex对于任何数据库操作。

拿这个示例代码进行测试:

app.post('/paramsjson', jsonParser, function(req, res) { 

  console.log(req.body);

  var table = req.body.Table;
  var fields = req.body.Fields;

  //If you want to use knex:

  knex( table ).insert( fields )

    .then(function (result) {
      console.log(result)
    })
    .catch(function (err) {
      console.log(err)
    })

  });

关于mysql - 如何获取多行json对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33242108/

相关文章:

mysql - 在MYSQL中删除部分字符串

mysql - 如何在mysql中使用id设置用户名

MySQL 中在 where 内计数不同的情况

javascript - 验证选择(四分之二)以检查值是否为空并且它们不重复?

javascript - 使用 json 响应在 chart.js 中绘制折线图

javascript - 在不知道深度的情况下移除另一个对象内的对象

javascript - 如何从 BASH 中的 Node 脚本访问返回值?

PHP 无法将全局变量导入到类内部的函数中

javascript - 使用 Node 加密和解密字符串

javascript - 想要 ping lambda 响应时间长达 4 或 5 秒或更短