我们可以使用分号作为MySQL DEMILITER吗?

不,我们不可以。如果您仍然这样做,则将不会创建存储过程。因此,首先,您需要将DELIMITER从分号(;)更改为其他名称,例如(//,?? .. etc)。以下是语法-

DELIMITER //
CREATE PROCEDURE yourProcedureName()BEGIN
yourStatement1,
.
.
.
.
N
END
//
DELIMITER ;

让我们实现上述语法以创建存储过程-

mysql> DELIMITER //
mysql> CREATE PROCEDURE get_Message()
   -> BEGIN
   -> SELECT CONCAT("HELLO"," ","MYSQL USERS");
   -> END
   -> //
mysql> DELIMITER ;

现在您可以在CALL命令的帮助下调用存储过程-

mysql> CALL get_Message();

输出结果

这将产生以下输出-

+-----------------------------------+
| CONCAT("HELLO"," ","MYSQL USERS") |
+-----------------------------------+
| HELLO MYSQL USERS                 |
+-----------------------------------+
1 row in set (0.00 sec)