任何人都可以帮我开始创建这个存储过程吗?我只是在学习,我无法弄清楚为什么这不起作用。我知道这很简单但我找不到任何显示错误的例子。
错误代码1064,SQL状态42000:您的SQL语法中有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“END IF”附近使用正确的语法 第7行,第1栏
CREATE PROCEDURE `su_verify_1`(IN inWks VARCHAR(15))
If inWks = 'WN-IA15HXY41135' THEN
select 'no' as result, '3' as errorcode, 'This is a test' as message;
ELSE
select 'yes' as result;
END IF;
感谢您的帮助。
答案 0 :(得分:1)
您需要设置分号以外的分隔符,以便MySQL知道过程定义的结束位置。目前,MySQL目前正在看到这一点:
CREATE PROCEDURE `su_verify_1`(IN inWks VARCHAR(15))
If inWks = 'WN-IA15HXY41135' THEN
select 'no' as result, '3' as errorcode, 'This is a test' as message;
将其余行视为单独的命令。使用DELIMITER
命令更改此项:
DELIMITER //
CREATE PROCEDURE `su_verify_1`(IN inWks VARCHAR(15))
BEGIN
IF inWks = 'WN-IA15HXY41135' THEN
SELECT 'no' AS result, '3' AS errorcode, 'This is a test' AS message;
ELSE
SELECT 'yes' AS result;
END IF;
END//
DELIMITER ;