【问题标题】:MySQL 5.1 [1305] function does not existMySQL 5.1 [1305] 函数不存在
【发布时间】:2017-06-12 15:08:09
【问题描述】:

我必须向本地 MySQL 添加一个函数,因为它是在远程服务器上定义的,用于测试目的。

但是当我添加一个像

这样的函数时
CREATE FUNCTION test(test VARCHAR(64))
RETURNS VARCHAR(64)
BEGIN
    return test;
END;

该函数已创建并在 ROUTINES 表中可见,但是当我尝试使用它时

SELECT test();

我收到一个错误

[42000][1305] FUNCTION test does not exist

这在 MySQL 5.7 上工作得非常好,但我似乎无法让它在 5.1 上工作

任何线索将不胜感激。

【问题讨论】:

    标签: mysql mysql-5.1


    【解决方案1】:

    我无法重现该问题:

    mysql> SELECT VERSION();
    +------------------+
    | VERSION()        |
    +------------------+
    | 5.1.73-community |
    +------------------+
    1 row in set (0.00 sec)
    
    mysql> DELIMITER $$
    
    mysql> DROP FUNCTION IF EXISTS `test`$$
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> CREATE FUNCTION `test`(`test` VARCHAR(64))
        -> RETURNS VARCHAR(64)
        -> BEGIN
        ->   RETURN `test`;
        -> END$$
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> DELIMITER ;
    
    mysql> SELECT `test`('MySQL');
    +-----------------+
    | `test`('MySQL') |
    +-----------------+
    | MySQL           |
    +-----------------+
    1 row in set (0.02 sec)
    

    【讨论】:

    • 感谢您的尝试,我担心它很难重现。如果我得到任何地方,我会更新问题
    猜你喜欢
    • 2018-08-14
    • 2016-09-21
    • 2020-10-11
    • 1970-01-01
    • 2014-04-24
    • 2014-08-17
    • 1970-01-01
    • 2014-04-20
    • 1970-01-01
    相关资源
    最近更新 更多