mysql数据库异常处理代码实例_MySql_数据库_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 数据库 > MySql > mysql数据库异常处理代码实例

mysql数据库异常处理代码实例

 2013/8/10 3:31:06    程序员俱乐部  我要评论(0)
  • 摘要:和C#中处理异常的方法很相像,mysql也有它自己处理异常的方法,本文列出了mysql处理实例的代码,通过代码我们来了解mysql数据库处理异常的原理和方法。具体的实例代码如下:DROPPROCEDUREIFEXISTSsp_call_jobs;CREATEPROCEDUREsp_call_jobs()NOTDETERMINISTICSQLSECURITYDEFINERCOMMENT''BEGINdeclare_row,_err,_countintdefault0
  • 标签:代码 数据库 数据 SQL 实例 MySQL数据库 MySQL 异常处理 异常

和C#中处理异常的方法很相像,mysql也有它自己处理异常的方法,本文列出了mysql处理实例的代码,通过代码我们来了解mysql数据库处理异常的原理和方法。
具体的实例代码如下:

    class="dp-xml">
  1. DROP PROCEDURE IF EXISTS sp_call_jobs;  
  2.  
  3. CREATE PROCEDURE sp_call_jobs()  
  4.  
  5. NOT DETERMINISTIC  
  6.  
  7. SQL SECURITY DEFINER  
  8.  
  9. COMMENT ''  
  10.  
  11. BEGIN  
  12.  
  13. declare _row,_err,_count int default 0;  
  14.  
  15. DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _err=1;  
  16.  
  17. while _row<3 DO  
  18.  
  19. START TRANSACTION;  
  20.  
  21. insert into t1(cond_val)values(null);  
  22.  
  23. COMMIT;  
  24.  
  25. if _err=1 then  
  26.  
  27. set _count_count=_count+1;  
  28.  
  29. end if;  
  30.  
  31. set _row_row=_row+1;  
  32.  
  33. end while;  
  34.  
  35. select _count;  
  36.  
  37. END; 

语句:

DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _err=1;

作用是当遇到SQLEXCEPTION,SQLWARNING,NOT FOUND 错误时,设置_err=1并执行CONTINUE操作,即继续执行后面的语句。

而且在执行可能出错的语句的时候我们用事务语句:START TRANSACTION; …… COMMIT; 可以保证完整性。

本文就介绍这些,如果想了解更多mysql的问题请到:http://database.51cto.com/mysql/,谢谢大家的支持!

发表评论
用户名: 匿名