Mysql 事务给我错误的存储过程
有人能告诉我为什么下面的存储过程给了我一个错误吗-Mysql 事务给我错误的存储过程,mysql,sql,stored-procedures,error-handling,Mysql,Sql,Stored Procedures,Error Handling,有人能告诉我为什么下面的存储过程给了我一个错误吗- CREATE PROCEDURE test(emailA varchar(50)) BEGIN DECLARE a INT; DECLARE f_id BIGINT; DECLARE exit handler for sqlexception sqlwarning BEGIN SET a = 1; END; DECLARE EXIT HANDLER FOR 1072 BEGIN CALL log_
CREATE PROCEDURE test(emailA varchar(50))
BEGIN
DECLARE a INT;
DECLARE f_id BIGINT;
DECLARE exit handler for sqlexception sqlwarning
BEGIN
SET a = 1;
END;
DECLARE EXIT HANDLER FOR 1072
BEGIN
CALL log_error(1072,'test');
END;
SELECT id INTO f_id FROM user WHERE email = emailA;
END//
错误
您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解可在“sqlwarning BEGIN SET a=1”附近使用的正确语法;结束;在第6行声明退出处理程序F',我想您需要添加逗号
DECLARE exit HANDLER FOR SQLEXCEPTION, SQLWARNING
为sqlexception集合a=1声明退出处理程序,sqlwarning调用日志_错误(1072,'test') 生成的错误消息是什么?我已经用error更新了我的帖子。我已经看到了使用这两种方法的地方---