MySql数据库捕获sql语句异常的方法
发布时间:2011-08-05 18:17:28
有使用过VS2005开发工具的朋友或者其他语句如js中都有Try catch 语句块,那么在mysql中是否能有SQLserver的@@error变量呢,或者如c#中的try catch语法呢?
答案是肯定的,实例代码如下:
DROP PROCEDURE IF EXISTS sp_call_jobs;
CREATE PROCEDURE sp_call_jobs()
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
BEGIN
declare _row,_err,_count int default 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _err=1;
while _row<3 DO
START TRANSACTION;
insert into t1(cond_val)values(null);
COMMIT;
if _err=1 then
set _count=_count+1;
end if;
set _row=_row+1;
end while;
select _count;
END;
语句:
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _err=1;
作用是当遇到SQLEXCEPTION,SQLWARNING,NOT FOUND 错误时,设置_err=1并执行CONTINUE操作,即继续执行后面的语句。
这就与c#中的try catch语法很像。
而且在执行可能出错的语句的时候我们用事务语句:START TRANSACTION; …… COMMIT; 可以保证完整性
猜你喜欢
- 本文实例为大家分享了vue实现列表倒计时的具体代码,供大家参考,具体内容如下如图10分钟倒计时在做项目的时候遇到vue列表要用到倒计时的方法
- 本文实例总结了javascript设置文本框光标的方法。分享给大家供大家参考,具体如下:对于text//得到光标位置function get
- sae中安装有python环境,想让sae导入自己下载的django或者其他模块,可以在svn中新建一个文件目录,比如site-packag
- django admin管理工具有很多好用的功能,例如搜索框、筛选器等,编码简单,功能强大。但是常规的时间筛选有一定局限性,只能显示一定时间
- 这10个asp处理网页编码转换的函数,不知何时收藏在我的电脑中,今天刚好看到了,拿出来与大家分享,这里各种常见的网页编码问题已经
- 一、安装openpyxl模块Python操作excel主要用到了openpyxl模块,按win+R打开cmd,在里面输入pip3 insta
- AIML全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理
- 具体方法:(推荐教程:mysql数据库学习教程)查看表被锁状态# 查询哪些表锁了show OPEN TABLE
- 本文实例讲述了js实现简单的可切换选项卡效果的方法。分享给大家供大家参考。具体如下:如图,最简单的纯粹的选项卡第一步,当然是先写html代码
- class test { &nbs
- 本文实例讲述了JavaScript DOM节点操作方法。分享给大家供大家参考,具体如下:使用DOM可以新建HTML元素,也可以删除已有的HT
- 一、安装插件npm install -D vuedraggable二、在需要排序的界面中引入组件<script>import d
- 1、简单示例如下: switch用例 var caseContent = '';//条件判断后处理内容 var caseVa
- 导包效果展示以下截图显示的撤回消息类型依次是文字消息、微信自带表情、图片、语音、定位地图、名片、公众号文章、音乐、视频。有群里撤回的,也有个
- 本文实例为大家分享了Python socket实现简单聊天室的具体代码,供大家参考,具体内容如下服务端使用了select模块,实现了对多个s
- 前言点击视频讲解更加详细this.$route:当前激活的路由的信息对象。每个对象都是局部的,可以获取当前路由的 path, na
- 如果你从 Ruby 或者 Python 转型到 Go,将会有很多语言差异需要学习,其中很多问题都是围绕处理 string 类型。下面是一些字
- 本文实例为大家分享了python封装对象实现时间效果的具体代码,供大家参考,具体内容如下# 钟表import timeclass Clock
- iterrows(),iteritems(),itertuples()区别Python函数之iterrows, iteritems, ite
- 一、与字典值有关的计算问题想对字典的值进行相关计算,例如找出字典里对应值最大(最小)的项。解决方案一:假设要从字典 {'a'