之后我要删除分号
END。
...END|DELIMITER ;
请发表评论,在声明新的定界符时不能使用当前的定界符。这听起来令人困惑,但是请考虑是否要执行以下操作:
DELIMITER |;
现在,MySQL会认为分隔符为“ |;”。(两个字符,一个竖线和一个分号)。如果考虑到这一点,
DELIMITER必须
由MySQL客户端以特殊方式对待。这是当前定界符 不能 遵循的唯一语句。
因此,在将分隔符设置为管道时,请执行以下操作:
DELIMITER |
将其设置回分号时,请执行以下操作:
DELIMITER ;
FWIW,我在MySQL 5.0.75的本地测试数据库上运行了以下命令,没有错误:
DROp FUNCTION IF EXISTS PersonName;DELIMITER |CREATE FUNCTION PersonName( personID SMALLINT )RETURNS CHAr(20)BEGIN DECLARE pname CHAr(20) DEFAULT ''; SELECT name INTO pname FROM family WHERe ID=personID; RETURN pname;END|DELIMITER ;



