mysql存储过程如何判断dml和dql执行的状态
时间:2011-09-21
来源:互联网
以前项目从来没用过存储过程。很多开源的软件也没有。
所以就疏忽这块内容。现在想补充学习其他之前没用过的其他技术。
以提高以后项目在数据库操作方面的效率。看了几章手册的内容,感觉受益匪浅。还在继续学习中。
言归正传。执行select insert update delete操作,如何判断执行情况。知道dml有个ROW_COUNT(),可以用来判断吗,还有其他办法吗。结合DECLARE HANDLER FOR 使用吗。谢谢。
作者: kxn308 发布时间: 2011-09-21
作者: RXPY2007 发布时间: 2011-09-21
DECLARE Handlers
DECLARE handler_type HANDLER FOR condition_value[,...] statement
handler_type:
CONTINUE
| EXIT
| UNDO
condition_value:
SQLSTATE [VALUE] sqlstate_value
| condition_name
| SQLWARNING
| NOT FOUND
| SQLEXCEPTION
| mysql_error_code
作者: wwwwb 发布时间: 2011-09-21
insert 可以返回ID,insert_id
嗯这个我知道 last_insert_id();
谢谢
作者: kxn308 发布时间: 2011-09-21
用DECLARE HANDLER捕获错误
DECLARE Handlers
DECLARE handler_type HANDLER FOR condition_value[,...] statement
handler_type:
CONTINUE
| EXIT
| UNDO
condition_value:
SQLSTATE [VALUE] s……
手册上的这个我也见过
实例能给一个最好了,不要手册的,手册的那个明白了。
对了 突然想到
这个处理程序后面可以给一个 语句
那么就可以加个变量判断。
谢了
作者: kxn308 发布时间: 2011-09-21
BEGIN
DECLARE CONTINUE HANDLER FOR 1216 select
'Foreign key constraint violated';
INSERT INTO departments (department_name,manager_id,location)
VALUES ('Elbonian HR','Catbert','Catbertia');
END;
作者: wwwwb 发布时间: 2011-09-21
error_count
来了解是否有错误。
作者: ACMAIN_CHM 发布时间: 2011-09-21
这样就不需要在存储过程内部逐语句去判断了。
作者: wfevgch 发布时间: 2011-09-21
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28