注:mysql中的ROW_COUNT()可以返回前一個SQL進行UPDATE,DELETE,INSERT操作所影響的行數。
MySQL上的測試(數據庫版本為:5.1.22):
1.創建數據庫表:
復制代碼 代碼如下:
create table t(
id int,
name varchar(50),
address varchar(100),
primary key(id,name)
)engine =InnoDB;
復制代碼 代碼如下:
insert into t
(id,name,address)
values
(1,'yubowei','weifang'),
(2,'sam','qingdao');
復制代碼 代碼如下:
update t set address = 'weifang'
where id = 1 and name = 'yubowei';
4.再更新:
復制代碼 代碼如下:
update t set address = 'beijing'
where id = 1 and name = 'yubowei';
備注:
今天用PREPARE動態處理了UPDATE語句后,發現ROW_COUNT()函數返回的老是-1 ,檢查了下原來是把row_count()放到了deallocate 語句后面了。
神一般的我,犯了這樣的錯,哈。
新聞熱點
疑難解答