ThinkPHP中的SQL结果分析
在进行结果判断时需要注意。
一、查询SQL:
可能出现的情况:
1、查询成功,返回正常数据。
2、查询成功,但是没有数据,返回NULL。
3、查询错误,写错关键字.结果:报错。例如把field()写成了filed()。
4、查询错误,写错字段名或表名,返回:false。例如把字段name写成了names。
总结:这里需要注意null和false,一个是确实没有符合要求的数据,而另一个是没有查到想要的数据表,
所以,不能用empty()函数,需要用is_null()或者全等===false来判断真假。
二、新增SQL:
可能出现的情况:
1、新增成功,返回新增数据的主键id。
2、新增失败,返回:false,例如写错表名字等。
3、新增失败,发生错误,例如:写错关键字、写错字段名、必需字段没有值等。
总结,新增的返回结果为真,就是执行成功了否则都是出错了。
三、更新SQL:
可能出现的情况:
1、更新成功,返回实际更新的条数。
2、更新成功,但是没有更新任何记录,返回int(0)。
3、更新错误,写错关键字,写错字段名.结果:报错。例如把setField单词写错成了setFileds()。
4、更新错误,写错表名,结果:false。
总结:更新也是需要区分false和0的问题。
四、删除SQL:
可能出现的情况:
1、删除成功,返回删除的条数,int类型,可能是0。
2、删除失败,返回:false,例如写错表名字等。
3、删除失败,发生错误,例如:写错关键字、写错字段名等。
总结:删除也是要区分false和0的区别。