Mybatis调用Mysql存储过程
2016-08-25 17:10
387 查看
在我的后台系统中,今天需要使用到存储过程。存储过程还真没写过,今天就写了个存储过程。使用在后台中。
其实这个接口功能 是涉及几张表的修改,删除,新增的。就写个一个存储过程。
存储过程:
--Mapper.xml文件调用存储过程
其实这个接口功能 是涉及几张表的修改,删除,新增的。就写个一个存储过程。
存储过程:
CREATE PROCEDURE `sp_combine_admin_group`(IN `group_id1` int(11), IN `group_id2` int(11),IN `admin_user_id` int(11),IN `group_name` varchar(64),IN `description` varchar(1024), out `t_error` INT(11)) BEGIN DECLARE new_group_id int(11); DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=0; SET t_error = 1; START TRANSACTION; INSERT INTO admin_group (`group_name`,`description`) values ( group_name,description); SET new_group_id =LAST_INSERT_ID(); UPDATE group_special_power SET group_id= new_group_id where group_id =group_id1 or group_id= group_id2; UPDATE group_menu_power SET group_id= new_group_id where group_id =group_id1 or group_id= group_id2; UPDATE group_hospital_power SET group_id= new_group_id where group_id =group_id1 or group_id= group_id2; UPDATE admin_user SET is_admin=0 , admin_group_id=new_group_id where admin_group_id =group_id1 or admin_group_id= group_id2; UPDATE admin_user SET is_admin=1 where id=admin_user_id; DELETE FROM admin_group where id =group_id1 or id= group_id2; IF t_error = 0 THEN ROLLBACK; ELSE COMMIT; END IF; END;
--Mapper.xml文件调用存储过程
<insert id="insertAdminGroupCombine" parameterType="org.system.entity.admin.AdminGroup" useGeneratedKeys="true" keyColumn="id" statementType="CALLABLE" > {call sp_combine_admin_group( 3 #{group_id1,jdbcType=INTEGER,mode=IN}, #{group_id2,jdbcType=INTEGER,mode=IN}, #{admin_user_id,jdbcType=INTEGER,mode=IN}, 6 #{group_name,jdbcType=VARCHAR,mode=IN}, 7 #{description,jdbcType=VARCHAR,mode=IN}, #{t_error,jdbcType=INTEGER,mode=OUT})} </insert>
相关文章推荐
- mybatis调用mysql存储过程
- mysql 存储过程,以及mybatis如何调用
- mybatis 调用mysql存储过程 带输出输入参数
- 【Mybatis学习】Mybatis学习之调用Mysql存储过程(1传入2输出)
- mybatis调用mysql存储过程,带结果集
- mybatis 调用mysql存储过程 带输出输入参数
- java, mybatis, 调用mysql存储过程
- mybatis调用mysql存储过程(返回值问题)
- Mysql的存储过程,Mybatis对存储过程的调用
- Mybatis调用MySQL存储过程
- mysql 存储过程,以及mybatis如何调用
- myBatis调用带返回值的存储过程(mysql)
- Mybatis调用MySQL存储过程
- MyBatis 调用MySql存储过程处理树形结构结果集
- Mybatis调用mysql存储过程
- MySQL 存储过程实例 与 ibatis/mybatis/hibernate/jdbc 如何调用存储过程
- mybatis 调用mysql存储过程 带输出输入参数
- MyBatis—调用mysql存储过程 带输出输入参数
- Java 调用MySQL存储过程配置与调用
- mysql存储过程学习及java调用存储过程