作者luo74128 (小貓)
看板PHP
標題[請益] mysql執行判斷問題
時間Mon Jul 23 18:39:57 2012
各位大大們,我想請問一個判斷mysql是否執行正確的問題,
ex : if(mysql執行正確){就......}else{就.......}
正確
Id | FolderId | Year
1 1 2012
2 1 2013
3 1 2014
4 2 2012->因為FolderId不一樣所以不算重複
錯誤
Id | FolderId | Year
1 1 2012->重複了
2 1 2013
3 1 2012->重複了
因此我在mysql 裡設了
CREATE UNIQUE INDEX IDIndex ON
TestA(FolderId,Year);
因此成功讓這兩個欄位加起來不重複
但是當mysql判斷重複時會出現錯誤提示
A Database Error Occurred
Error Number: 1062
Duplicate entry '1-2012' for key 2
我想當錯誤時跳回並alert提醒
但是我發現這個錯誤訊息無法用php判斷
程式碼如下
ps: echo "123"; 我可以看到顯示
但是echo "456"; 我卻看不到??怎麼回事
是因為insert的錯誤程式停止運作了嗎???
echo "123";
$rs = ("INSERT INTO `TestA`(`Id`,`FolderId`,`Year`)value('','".$_POST['FolderId']."','".$_POST['Year']."')");
$query = $this->db->query($rs);
echo "456";
if($query){echo "OK";}else{echo "NO";}/*這段程式碼無效???????*/
--
Aman ia vida 地下飛行
blog:
http://luo74128.blogspot.com/2010/07/blog-post.html
我:
http://www.wretch.cc/album/luo74128
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 222.126.156.188
1F:→ luo74128:感謝各位我找到一個方法!用ignore忽略insert錯誤 07/23 20:14
2F:推 liisi:我想說 用group by 就不會出現重複 = =|| 07/23 22:18
3F:→ luo74128:我想請問如果是group by的話要怎麼寫呢? 07/24 20:15