当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL存储过程SAVEPOINT ROLLBACK to

MYSQL
MYSQL教程:保护MySQL安装程序文件
MYSQL教程:MySQL服务器权限表
MYSQL教程:建立加密连接
MYSQL教程:检查数据表和修复数据表
MYSQL教程:备份数据库
MYSQL教程:使用备份恢复数据
MYSQL教程:MySQL程序介绍
MYSQL教程:数据库具体操作
MySQL Explain命令用于查看执行效果
Phpnow服务器软件集成套件的安装问题和解决方法
SQLyog工具可以分析Mysql数据库
AppServ安装配置Apache+PHP+Mysql环境
MySQL异常:未验证的用户尝试登录
Mysql教程:MYSQL创建触发程序
MYSQL代码:定期备份Mysql数据库
PHP实现的Mysql读写分离
PHP教程:MySQL读写分离由PHP实现
用PHPnow搭建PHP+MYSQL网站开发环境
瑞典300M可绑米免费PHP空间
常见的十款PHP+MySql类免费CMS系统

MYSQL 中的 MySQL存储过程SAVEPOINT ROLLBACK to


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 178 ::
收藏到网摘: n/a

MySQL存储过程SAVEPOINT ROLLBACK to

示例如下:

以下为引用的内容:

DELIMITER $$

DROP PROCEDURE IF EXISTS `test`.`handlerdemo`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `handlerdemo`()

BEGIN

DECLARE X2 INT;

DECLARE CONTINUE HANDLER FOR SQLWARNING SET X2= 1;

DECLARE CONTINUE HANDLER FOR NOT FOUND SET X2 = 2;

DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET X2= 3;

DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET X2 = 4;

START TRANSACTION;

SAVEPOINT savepoint_1;

BEGIN

INSERT INTO eugene VALUES (1);

INSERT INTO eugene VALUES (2);

SELECT X2;

end;

ROLLBACK TO SAVEPOINT savepoint_1;

iNSERT INTO eugene VALUES (3);

END$$


DELIMITER ;


#测试表

CREATE TABLE `eugene` (

t1` int(4) default NULL

)