当前位置: 代码迷 >> Sql Server >> mysql 存储过程 的HelloWorld 如何写
  详细解决方案

mysql 存储过程 的HelloWorld 如何写

热度:562   发布时间:2016-04-24 08:48:30.0
mysql 存储过程 的HelloWorld 怎么写?
 这是看到的Helloworld 的入门文章

可是哪一种执行都不对啊
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 '' at line 3

========================================


第一步,当然是写个Hello Word的存储过程,如下:

CREATE PROCEDURE phelloword()

BEGIN

  SELECT 'Hello Word!' AS F;

END;

 

将上面创建phelloword存储过程的语句拷到phpMyAdmin中执行,报如下错误:

#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 '' at line 3

 

在这个问题上我纠缠了很久,在MySQL的命令行工具中执行同样不成功,但是根据提示信息可以知道执行在 SELECT 'Hello Word!' AS F;处结束,后面的END;没有执行,这显然会导致错误。

这里需要选择以个分隔符,语法如下:DELIMITER //

分隔符是通知MySQL客户端已经输入完成的符号。一直都是用“;”,但是在存储过程中不行,因为存储过程中很多语句都需要用到分号。

因此上面的存储过程改为:

CREATE PROCEDURE ptest()

BEGIN

  SELECT 'Hello Word!' AS F;

END //

 

另外在phpMyAdmin中执行时,在Delimiter文本框中填写 //,这次存储过程即可创建成功。

 

===================

------解决思路----------------------
DELIMITER $$
CREATE PROCEDURE phelloword()
BEGIN
  SELECT 'Hello Word!' AS F;
END$$
  相关解决方案