Rej*_*aul 12 javascript mysql node.js node-mysql
如何检查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:'
}
Run Code Online (Sandbox Code Playgroud)
我的数据库不包含name ='abcd'.那么,我该如何检查查询是否不匹配?
Rod*_*ros 16
[]
作为查询结果,您收到一个空数组(),因为正如您所说,您的数据库不包含任何行name = 'abcd'
.
当你这样做时:
if (result) {
if (result)
console.log("Test:" + result);
Run Code Online (Sandbox Code Playgroud)
,你会进入if
,JavaScript,因此评估true
的[]
.看一下这篇文章,它解释了Javascript如何评估true
和评估false
.
检查结果数组是否为空的更好方法是:
if (result.length > 0) {
if (result)
console.log("Test:" + result);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
28598 次 |
最近记录: |