您好,我正在练习存储过程,我需要帮助。 我想尝试使用IF。如果存在选择ID,那么我想删除它。
错误1064(42000):您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以获得在''附近使用的正确语法。在第6行
DELIMITER $$
CREATE PROCEDURE HELLO(IN _id INT)
BEGIN
IF EXISTS(SELECT ID FROM User WHERE ID = _id)
THEN
DELETE FROM User WHERE ID = _id;
END
$$
DELIMITER ;
答案 0 :(得分:0)
这不是if
的好例子。最好的逻辑是:
begin
delete from user where id = _id
end;
在这种情况下if
没有理由。你可以做:
begin
if exists (select 1 from users where id = _id) then
delete from user where id = _id;
end if;
end;
我不推荐这个。但是,基本上,end if
之前的if
只需要end
。