簡體   English   中英

將JSON從Node.js存儲到SQL Server

[英]Store JSON from Node.js to SQL server

我對這種發展非常陌生,我正在努力做到最好。 我正在從客戶端獲取JSON數據,並試圖將這些數據發送到sql數據庫中。 我正在使用SSMS2012。我有一個想法(在代碼中)插入這些值,但是我應該怎么做才能將這些JSON存儲到SQL數據庫中? 有什么方法比我嘗試做的更好嗎? 以下是詳細信息,如果不清楚,請告知我。

JSON格式

{“ GradeA”:25,“ GradeB”:36,“ GradeC”:32}

sql_Table

甲級| 乙級| C級

后端

    app.post('/ping', function (req, res) {
  res.send(res.body);
  var jsondata = JSON.stringify(req.body);
  var test = JSON.parse(jsondata);

  var values = []; 
  values.push(test.GradeA, test.GradeB, test.GradeC)
  console.log(values);

  var dbConn = new sql.Connection(config);

  dbConn.query("INSERT INTO RMS (GradeA, GradeB, GradeC) VALUES ?", [values], function(err, result, fields){
    if (err) throw err;
    //if no error, resulst return as follow
    console.log(result);
    console.log("Number of rows affected :" + result.affectedRows);
    console.log("Number of records affected with warning : " + result.warningCount);
    console.log("Message from MySQL Server : " + result.message);
  });
});

您的代碼有幾個問題。

您正在使用JSON.stringify而不是JSON.parse

let json = '{"GradeA":25,"GradeB":36,"GradeC":32}';
let jsondata = JSON.stringify(json);
console.log(typeof jsondata);  // string

let datajson = JSON.parse(json);
console.log(typeof datajson);  // object
console.log(datajson.GradeA);  // 25

接下來,在for循環中進行數據庫查詢是一個非常糟糕的主意。

還要注意,您不能多次發送HTTP響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM