这个第一行有什么问题啊

delimiter //

CREATE PROCEDURE test_if_pro(in sal DOUBLE)

BEGIN

  if sal < 3000

    then delete from employees where salary = sal;

elseif sal <=5000

     then UPDATE employees set salary=salary + 1000 where salary = sal;

else 

  update employees set salary = salary + 500 where salary = sal;

END if;

END //

delimiter ;

delimiter ;

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delimiter' at line 1

SQL yzm551263 发布于 2022-8-19 13:45
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
StudyYLLv6初级互助
发布于2022-8-19 14:06(编辑于 2022-8-19 14:16)

https://blog.csdn.net/xkdlzy/article/details/123918971

直接

CREATE PROCEDURE test_if_pro(in sal DOUBLE)

BEGIN

  if sal < 3000

    then delete from employees where salary = sal;

elseif sal <=5000

     then UPDATE employees set salary=salary + 1000 where salary = sal;

else 

  update employees set salary = salary + 500 where salary = sal;

END if;

END 

如果是在Navicat或其他工具执行的话不需要

delimiter //

 //

delimiter ;

最佳回答
0
runerLv7资深互助
发布于2022-8-19 14:09

数据集不能执行 增删改

  • 3关注人数
  • 438浏览人数
  • 最后回答于:2022-8-19 14:16
    请选择关闭问题的原因
    确定 取消
    返回顶部