-1

我正在尝试运行这个循环,我希望在其中改变“i”的值。

但是,对于循环的所有 4 次迭代,该值似乎都停留在零。

for(var i=0;i<5;i++){

        client.query('SELECT curattend FROM table1 WHERE ind=("++i++")', function(err,result){
        att = result[0].curattend;
        console.log(att)
        });
}

有人对为什么会发生这种情况有任何建议吗?谢谢!

4

2 回答 2

4

您没有在查询中包含变量i,您只是查询了硬编码的 string ("++i++")

这个:

client.query('SELECT curattend FROM table1 WHERE ind=("++i++")', function(err,result){

应该:

client.query('SELECT curattend FROM table1 WHERE ind = ?', [i], function(err,result){

于 2013-07-25T22:54:04.057 回答
2

您已将“++i++”放在用单个 qoutes (') 括起来的字符串中。您还必须使用单引号来转义字符串。

用这个:

client.query('SELECT curattend FROM table1 WHERE ind=('+i+')', function(err,result){
于 2013-07-25T22:51:50.627 回答