我在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);
});
});
}
通过变量获取列名称的条目。
答案 0 :(得分:1)
@股票夸大:您是绝对正确的。我尝试过res [i] [Betrag];那没有用。但是,res [i] [colName]有效!非常感谢你!
摘要:
您将获得一个数组带有变量(例如colName)的单个条目:
res[i][colName]
您将获得一个数组没有变量的单个条目(例如“ Betrag”):
res[i].Betrag