把存储过程改成普通查询就不卡死了。存储过程如下:CREATEPROCEDUREproc_register(INlogin_namevarchar(30),INpwdvarchar(40),INmember_typevarchar(1),INemailvarchar(60))BEGINDECL...
把存储过程改成普通查询就不卡死了。
存储过程如下:
CREATE PROCEDURE proc_register(
IN login_name varchar(30),
IN pwd varchar(40),
IN member_type varchar(1),
IN email varchar(60)
)
BEGIN
DECLARE txn_error INT DEFAULT 0; -- 记录是否出现错误
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET txn_error=1; -- 如果出现错误设置为1
START TRANSACTION; -- 开启一个事物
-- 往用户表插入一条记录
INSERT INTO jm_userinfo(login_name,pwd,member_type,email)
VALUES(login_name,pwd,member_type, email);
IF(txn_error = 1)
THEN ROLLBACK; -- 出现错误,事物回滚
END IF;
-- 往加盟信息表插入一条数据
INSERT INTO jm_joininfo(login_name,join_capital) VALUES(login_name,1);
IF(txn_error = 1)
THEN ROLLBACK; -- 出现错误,事物回滚
ELSE
COMMIT; -- 没有出现错误,提交事物
END IF;
END;
展开