DELIMITER $$ CREATE PROCEDURE `demo`.`demo1`() -- 存储过程体 BEGIN -- DECLARE声明 用来声明变量的 DECLARE de_name VARCHAR(10) DEFAULT ''; SET de_name = "jim"; -- 测试输出语句(不同的数据库,测试语句都不太一样。 SELECT de_name; END$$ DELIMITER ;里面的 $$是干啥的
时间: 2024-03-28 18:40:53 浏览: 137
使用T-SQL用户定义的函数进行字符串拆分/标记。
在MySQL中,DELIMITER是一个指令,用于指定SQL语句的分隔符。默认情况下,分号(;)是SQL语句的分隔符,因此当我们定义存储过程等复杂的SQL语句时,需要使用分号作为内部SQL语句的分隔符,但是如果直接使用分号作为整个SQL语句的分隔符,会导致MySQL解析错误。
为了解决这个问题,可以使用DELIMITER指定新的分隔符,例如使用$$。在定义完存储过程等复杂SQL语句后,再使用DELIMITER重新设置分隔符为分号(;)即可。
在上述示例中,$$用于定义存储过程体的开始和结束位置,因此在存储过程体的末尾,需要重新将分隔符恢复为分号(;),以便后续SQL语句的执行。
阅读全文