我将NodeJS与Express结合使用,并且尝试执行如下内部连接语句:
getAllGrades: function(callback) {
var sql = "SELECT * FROM questions INNER JOIN questionanswers ON (questions.questionNo=questionanswers.questions_questionNo) WHERE questionanswers.users_userNo = 2 AND questionanswers.softdel = 0";
con.query(sql, function(err, result) {
if (err) {
callback(err, null);
}
else {
callback(null, result);
}
});
},
此回调函数适用于我先前的查询,也适用于普通的select语句,但是,此回调始终返回null。我在MySQL Workbench上键入了这个确切的语句,并得到了一个结果:
SELECT * FROM questions INNER JOIN questionanswers ON (questions.questionNo=questionanswers.questions_questionNo) WHERE questionanswers.users_userNo = 2 AND questionanswers.softdel = 0;
为什么当我的SQL编译器没有运行时,此NodeJS查询返回null?
答案 0 :(得分:0)
超级傻,忘记添加我的数据库名称。.SELECT * FROM mydb.questions INNER JOIN questionanswers ON (questions.questionNo=questionanswers.questions_questionNo) WHERE questionanswers.users_userNo = 2 AND questionanswers.softdel = 0;
答案 1 :(得分:0)
如果您在msql.createConnection
中配置了数据库名称,则无需添加数据库名称。
例如:
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password : 'yourPasswordHere',
database : 'mydb'
});