mysql查询空数据也返回true
已经用promise封装query了,测试成功可以取到存在的数据
但是 我想查询一个不存在的行 (open_id = ‘zzz’)
代码如下:
module.exports = async ctx => {
let data;
try {
data = await mysql.query("SELECT * FROM user WHERE open_id = 'zzz'");
} catch (err) {
ctx.state.data= { message: err.message };
ctx.status = err.status || 500;
}
if (data){
ctx.state.data = '已存在'
}
else{
ctx.state.data = '不存在'
}
我都把数据库清空了,返回的也是已存在??
想请问大佬,有没有什么解决方案,如果不存在不是要返回false的吗,小弟在此谢过!
4 回复
数据空又不是错误,数组判断 length
应该取行数吧,返回true是代表语句执行成功吧?
if(data.length == 0)我一般这样判断的
我习惯这样封装mysql,你参考一下,不知道好不好 调用的时候是 var {err,data} =await query(sql)这样子
nnn