PHP PDOStatement::rowCount讲解
PDOStatement::rowCount
PDOStatement::rowCount—返回受上一个SQL语句影响的行数(PHP5>=5.1.0,PECLpdo>=0.1.0)
说明
语法
intPDOStatement::rowCount(void)
PDOStatement::rowCount()返回上一个由对应的PDOStatement对象执行DELETE、INSERT、或UPDATE语句受影响的行数。
如果上一条由相关PDOStatement执行的SQL语句是一条SELECT语句,有些数据可能返回由此语句返回的行数。但这种方式不能保证对所有数据有效,且对于可移植的应用不应依赖于此方式。
返回值
返回行数。
实例
返回删除的行数
PDOStatement::rowCount()返回受DELETE、INSERT、或UPDATE语句影响的行数。
prepare('DELETEFROMfruit'); $del->execute(); /*返回被删除的行数*/ print("Returnnumberofrowsthatweredeleted:\n"); $count=$del->rowCount(); print("Deleted$countrows.\n"); ?>
以上实例输出:
Returnnumberofrowsthatweredeleted:
Deleted9rows.
计算由一个SELECT语句返回的行数
对于大多数数据库,PDOStatement::rowCount()不能返回受一条SELECT语句影响的行数。替代的方法是,使用PDO::query()来发出一条和原打算中的SELECT语句有相同条件表达式的SELECTCOUNT(*)语句,然后用PDOStatement::fetchColumn()来取得下一行。这样应用程序才能正确执行。
100"; if($res=$conn->query($sql)){ /*检查符合SELECT语句的行数*/ if($res->fetchColumn()>0){ /*发出一条真正的SELECT语句并操作返回的结果*/ $sql="SELECTnameFROMfruitWHEREcalories>100"; foreach($conn->query($sql)as$row){ print"Name:".$row['NAME']."\n"; } } /*没有匹配的行--执行其他*/ else{ print"Norowsmatchedthequery."; } } $res=null; $conn=null; ?>
以上实例输出结果为:
apple
banana
orange
pear
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。