如何检查mysql (node.js)中是否有匹配?
mysql.query("select * from table1 where name = 'abcd'", function(error, result, field) {
if(error) {
exist(error); //No error
} else if(result) {
console.log(result); //displays '[]'
exist(null, result);
} else {
exist(null, null); //It is never execute
}
});
function exist(error, result) {
if(result)
console.log("Test:"+result); //Executed and displays 'Test:'
}我的数据库不包含name = 'abcd‘。那么,如何检查查询是否不匹配呢?
发布于 2014-07-10 20:01:48
您将收到一个空数组([])作为查询结果,因为正如您所说的,您的数据库不包含任何带有name = 'abcd'的行。
当你这样做的时候:
if (result) {
if (result)
console.log("Test:" + result);,您将输入if,因为Javascript为[]计算true。看看this article here,它解释了Javascript如何计算true和false的值。
检查结果数组是否为空的更好方法是这样做:
if (result.length > 0) {
if (result)
console.log("Test:" + result);https://stackoverflow.com/questions/24675125
复制相似问题