用户定义的功能问题

时间:2010-11-23 15:25:51

标签: mysql

CREATE FUNCTION testing(id INT, dsc TEXT) RETURNS TEXT
BEGIN
DECLARE ntxt TEXT;
SET ntxt = dsc;
RETURNS ntxt;
END;

您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以便在第3行的“TEXT”附近使用正确的语法

我想念的是什么?

2 个答案:

答案 0 :(得分:1)

  1. 您忘了更改分隔符
  2. RETURN有一个额外的S
  3. 这确实有效:

    DELIMITER //
    
    CREATE FUNCTION testing(id INT, dsc TEXT) RETURNS TEXT
    BEGIN
        DECLARE ntxt TEXT;
        SET ntxt = dsc;
        RETURN ntxt;
    END//
    

答案 1 :(得分:0)

您可能忘记在脚本的最开头添加DELIMITER $$(标准分隔符为;,并且它也用于过程/函数)。例如,

 DELIMITER $$
 [CREATE FUNCTION ...... ]
 $$
 DELIMITER ;