您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關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;
}
關于php更新mysql后怎么獲取改變行數就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。