哪位能帮忙讲讲,存储过程中DELIMITER关键字的作用?
可以理解为定义mysql中的语句结束标志。 默认是 ; 但是存储过程或函数中一般有多条sql,在命令行创建存储过程时遇到;,就会解析为一条语句结束,这时候就会去执行,这显然不符合预期。所以可以通过delimiter关键字暂时将结束标志改为其他:一般为||,$$等。这样定义存储过程时遇到 ; 就不会结束。等到输入完整个存储过程时,再执行。 delimiter一般都是成对出现的。
在定义语句结束标志时,需要让DELIMITER关键字与结束标志中间有一个空格,示例如下: DELIMITER ;