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

问题描述 投票:0回答:2

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

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

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

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

RETURNS INTEGER
BEGIN

RETURN 1;
END
mysql function plsql enums parameter-passing
2个回答
1
投票

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

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


0
投票

您可以对函数参数使用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之一声明函数。
© www.soinside.com 2019 - 2024. All rights reserved.