【发布时间】:2020-02-04 15:08:16
【问题描述】:
我在 MySQL 中有一个可以正常工作的函数:
CREATE PROCEDURE `Accounts_Active`(IN_DeptName VARCHAR(255), IN_Src ENUM('TRAINING','ELZA'))
BEGIN
END$$
DELIMITER ;
但是当转换为 PostgreSQL 时:
CREATE or replace FUNCTION Accounts_Active(IN_DeptName VARCHAR(255), IN_Src ENUM('TRAINING','ELZA'))
RETURNS void
AS
$$
BEGIN
RAISE INFO ' ';
END;
$$ LANGUAGE plpgsql;
出现以下错误:
ERROR: type enum does not exist
SQL state: 42704
任何关于如何修复此错误的指导将不胜感激。
【问题讨论】:
-
您没有动态定义枚举。你需要已经定义它,然后在你的函数中你可以说
in_src your_enum_type -
您好,欢迎来到 Stack Overflow。正如 404 所说,您需要先定义您的枚举,然后才能使用它。查看 PostgreSQL 文档 postgresql.org/docs/9.1/datatype-enum.html
标签: postgresql function enums input-parameters