PL-SQL-我可以将枚举作为函数参数传递吗?

时间:2020-02-25 14:06:20

标签: mysql function enums parameter-passing

我的表中有一个名为'type'的字段/列,其枚举数据类型,我希望对PL-SQL函数使用类似的参数类型。

我可以将枚举作为函数参数传递吗?

我已经尝试过以下函数(对于mySQL),但是它确实接受枚举作为函数的参数/参数。

df = pd.read_csv(StringIO(txt), delim_whitespace=True)

df = df.reset_index()

df = df.melt(id_vars="index")

df = df.rename(columns={"index":"Speed",
                        "variable":"Height",
                        "value":"Count"})

2 个答案:

答案 0 :(得分:1)

函数参数必须是MySQL数据类型。不支持ENUM

建议您完全远离ENUM。请使用单独的表格作为可读值,以便稍后在需要时进行更改,而不会造成很大麻烦。

答案 1 :(得分:1)

您可以将ENUM类型用作函数参数,但是MySQL的语法错误。

这有效:

CREATE FUNCTION `save_type` (type enum('new', 'existing', 'xyz'))

RETURNS INTEGER
DETERMINISTIC
BEGIN

RETURN 1;
END

差异:

  • enum关键字后列出枚举值。
  • 对于MySQL存储功能,INOUT参数没有选项。
  • 应使用DETERMINISTICNO SQLREADS SQL DATA中的一个声明函数。
相关问题