ORA-23454: flavor string not defined for object group “string”.”string”

文档解释

ORA-23454: flavor string not defined for object group “string”.”string”

Cause: The given object group does not contain a (published) definition of the specified flavor.

Action: Check the spelling of the flavor name. Ensure the flavor has been defined (and published) for the object group.

ORA-23454错误消息指示您未为指定的对象组定义非默认口味。

官方解释

ORA-23454错误消息是Oracle数据库运行时出错消息,指示您尝试为指定的对象组添加或更改口味时发生的错误。此错误消息指示未为该对象组定义特定的口味类型。

常见案例

ORA-23454错误消息通常发生在尝试使用DBMS_RLS或RLS安全包创建列级安全性策略时。 此错误消息也可能发生在尝试使用UTL_MAIL PL/SQL包发送二进制文件时。

一般处理方法及步骤

1. 显式地定义口味类型,例如:EMBEDDED_JAVA PK_EXTERNAL_JAR

口味类型取决于特定的应用程序场景。

2. 使用定义自己的口味类型的函数(仅用于存储过程、触发器和函数)的情况下,要求对象组具有修改已存在的权限。

3. 向指定的对象组添加指定口味类型,如下所示:

ALTER OBJECT_GROUP [GROUP_NAME] ADD EDITION EDITION_NAME;

4. 将指定口味类型添加到指定的对象组,如下所示:

ALTER OBJECT_GROUP [GROUP_NAME] ADD EDITION EDITION_NAME, FLAVOR FLAVOR_TYPE;

5. 使用DBMS_RLS或RLS安全包创建列级安全策略时,您可能需要显式地指定口味,例如:

DBMS_RLS. ADD_POLICY(OBJECT_SCHEMA :=’MY_SCHEMA’,OBJECT_NAME :=’MY_TABLE’,POLICY_NAME :=’MY_POLICY’,FLAVOR :=“EMBEDDED_JAVA”,LOCAL_POLICY := “MY_LOCAL_POLICY”);

6. 使用UTL_MAIL PL/SQL包发送二进制文件时,可能需要显式地指定口味,例如:

UTL_MAIL. SEND(FROM_ADDRESS :=’ ADMIN@mydomain. com ‘,TO_ADDRESSES :=”MY_EMAIL_ADDRESS”,SUBJECT :=“Some Subject”,ATTACHMENTS :=”MY_FILE_NAME”,FLAVOR :=“PK_EXTERNAL_JAR”);

你可能感兴趣的