检查查询是否成功时,哪个更好?
此
/* for values to >= count, prefixed CharacterView will be suffixed until its end */
extension CollectionType where Generator.Element == Character {
func inHalfOpenRange(from: Int, to: Int) -> Self {
guard case let to = min(to, underestimateCount()) where from <= to else {
return self.prefix(0) as! Self
}
return self.prefix(to).suffix(to-from) as! Self
}
}
/* example */
let m = "0123456789"
for ch in m.characters.inHalfOpenRange(4, to: 8) {
print(ch) /* \ */
} /* 4 a (sub-collection) CharacterView
5
6
7 */
或者这个:
$query= "SELECT * FROM `table`";
$mysqliResult = $mysqli->query($query);
if(mysqli_num_rows($mysqliResult)) {
}
答案 0 :(得分:1)
<强>都不是。强>
第一个根本不是一个选项。它只是不适用,因为空洞的结果也是合法的结果 - 无论如何,查询都是成功的 此外,如果查询不成功,这个代码本身就会抛出错误!
第二个可以用于此目的,但这种方法已经过时,非常不方便。
相反,在异常投掷模式下设置mysqli,你根本不需要代码来测试成功!
答案 1 :(得分:0)
第一个选项更好,因为您只检查查询是否成功,但我们使用的第二个选项是当我们需要检查值和数据类型相等时,首先更好