新建存储过程为什么要加delimiter $$

SQL中,delimiter命令的作用是定义sql语句的分隔符

sql中默认的语句分隔符是分号(分号后面的当成下一条语句)

写存储过程或函数等语句块时,中间会包含分号,所以语句块不能成为一个整体,执行的时候就会报错

所以,执行这样的语句块时,先用delimiter定义其他的符号作为分隔符,执行完语句块后再用delimiter ;恢复成系统默认的

例子:

delimiter $$

create procedure test_pro()

begin

  select * from user_info; 

end $$

##上面这几条选中一起执行,后面这条单独执行(后面这条好像不执行也可以)

delimiter ; 

posted @ 2022-10-31 11:41  帅哥才  阅读(1489)  评论(0编辑  收藏  举报