1
我正在编写用户注册表单。在node-js node mysql plugin中,我必须像这样编写嵌套代码吗?Node.js多个Mysql查询
var query1 = connection.query('SELECT * FROM table1 WHERE var1 = ?', [var1], function(err, results1) {
if(results1[0]) {
var query2 = connection.query('SELECT * FROM table2 WHERE var2 = ?', [var2], function(err, results2) {
if(results2[0]) {
var query3 = connection.query('SELECT * FROM table2 WHERE var3 = ?', [var3], function(err, results3) {
if(results3[3]) {
// do it.
}
});
}
});
}
});
编写嵌套代码真的很无聊。有没有这样的方式来做多个查询?
var query1 = connection.query('SELECT * FROM table1 WHERE var1 = ?', [var1], function(err, results1) { });
var query2 = connection.query('SELECT * FROM table1 WHERE var2 = ?', [var2], function(err, results2) { });
var query3 = connection.query('SELECT * FROM table1 WHERE var3 = ?', [var3], function(err, results3) { });
if(results1[0]) {
} else if(results2[0]) {
} else if(results3[0]) {
} else {
// do it.
}
我没有问异步问题......我只是要求编写必要的嵌套代码,如第一个区块 – ozer 2014-08-28 22:09:19
而我的回答是,你没有*有*编写嵌套代码,并且'async'是一个替代方案编写嵌套的匿名函数。 – mscdex 2014-08-28 22:55:51
谢谢。那么,还有其他方法吗? – ozer 2014-08-28 23:16:41