好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php更新mysql后获取改变的行数 - php高级应用

php更新mysql后获取改变的行数

一个php更新mysql后获取改变的行数,在php中提供mysql函数来获取最后执行查询所影响的记录数:mysql_affected_rows(), 返回最近一次与 连接句柄 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数.FOUND_ROWS() : select ROW_COUNT():update delete insert.

下面就是文章的主要内容描述,代码如下:

found_rows():select

row_count(): update delete insert

注: 需要配合相应的操作一起使用,否则返回的值只是1和-1(都是不正确的值)

php示例代码如下:

drop database  if  exists `mytest`;   create database `mytest`;   use  `mytest`;  drop table  if  exists `MyTestTable`;   create table `MyTestTable`(`ID` int ,`Name` varchar(10));  insert into `MyTestTable`(`ID`,`Name`)   select  '1' , 'role1'  union all   select  '2' , 'role2'  union all   select  '3' , 'role3' ;   select row_count(); -- 输出3(返回新添加的记录数),[注:如果使用insert into...values只返回1]  select * from `MyTestTable`;select found_rows(); -- 输出3(返回选择的行数)   update `MyTestTable` set `Name`= 'people' ;select row_count(); -- 输出3(返回修改的行数)   delete  from `MyTestTable`;select row_count(); -- 输出3(返回删除的行数) 

php更新mysql后获取影响的行数发生异常解决,代码如下:

function  mysql_modified_rows () {            $info_str  = mysql_info();            $a_rows  = mysql_affected_rows();            ereg ( "Rows matched: ([0-9]*)" ,  $info_str ,  $r_matched );            return  ( $a_rows  < 1)?( $r_matched [1]? $r_matched [1]:0): $a_rows ;   } //开源代码phpfensi测试数据

查看更多关于php更新mysql后获取改变的行数 - php高级应用的详细内容...

  阅读:45次