如何在Node.js中读取列名称为变量的MySQL数据库的所有条目

时间:2019-04-02 14:49:03

标签: mysql node.js

我在MySQL表“ Book”中通过两个for循环来获取值:

如果我明确使用列名“ Betrag”来获取值(例如res[i].Betrag),那么它将起作用!当我为列名使用变量('colName')时,它将发出错误消息。

如何在不在代码中键入列名的情况下获取MySQL表的值?

感谢您的帮助, M @ trix

Value.toString()

app.get('/', function (req, res) {
  //Build connection to MySQL database
  var mysql2 = require('mysql');

  var db2 = mysql2.createPool({
  host: "127.0.0.1",
  user: "...",
  password: "...",
  database: "DataRobot"
  });

db2.query('SELECT * FROM Book', function (error, results, fields) {
  if (error) throw error;

});


function setResHtml(sql, cb){
    db2.getConnection((err, con)=>{
    if(err) throw err;

    con.query(sql, (err, res, cols)=>{

      if(err) throw err;
      for(var i=0; i<res.length; i++){
        for(var j=0; j<3; j++) {
          var colName= cols[j].name;
          console.log("res[i].Betrag:"); 
          console.log(res[i].Betrag); // shows the value 
          console.log("res[i].colName:");
      console.log(res[i].colName); // shows an error message!!!!
    };
      }
      con.release(); 
      return cb(table);
      });
    });
  }

通过变量获取列名称的条目。

1 个答案:

答案 0 :(得分:1)

@股票夸大:您是绝对正确的。我尝试过res [i] [Betrag];那没有用。但是,res [i] [colName]有效!非常感谢你!

摘要:

您将获得一个数组带有变量(例如colName)的单个条目:

res[i][colName]

您将获得一个数组没有变量的单个条目(例如“ Betrag”):

res[i].Betrag