DROP PROCEDURE IF EXISTS `p_userinfo_delete`; DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ PROCEDURE `p_userinfo_delete`(IN mobilePhone_ VARCHAR(11)) MODIFIES SQL DATA COMMENT '删除用户信息' BEGIN -- 用户ID DECLARE userId_ VARCHAR(8); -- 错误标识 DECLARE t_error INT DEFAULT 0; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error = 1; START TRANSACTION; IF (t_error = 0 AND mobilePhone_ IS NOT NULL) THEN SELECT id INTO userId_ FROM `user` WHERE mobilePhone = mobilePhone_; -- 删除用户表 DELETE FROM `user` WHERE id = userId_; END IF; IF t_error =0 THEN COMMIT; ELSE ROLLBACK; END IF; END$$ DELIMITER ;
使用事务进行处理