1

以下のスクリプトを使用して、データベース内の列のポリシーを作成しようとしています。これは、あるデータベースでは正常に作成されていますが、他のデータベースではエラーが発生していました。

参考: 両方のデータベースには、DBMS_REDACT POLICY に対する EXECUTE PRIVILEGE があります。

ORA-28086: データ・リダクション・ポリシー式にエラーがあります。

BEGIN
DBMS_REDACT.ADD_POLICY(
object_schema =>'schemaname', 
object_name =>'tablename', 
column_name =>'columnname', 
policy_name =>'policyneme', 
function_type =>DBMS_REDACT.REGEXP, 
policy_description =>'Masks the first 5 digits of SSN', 
regexp_replace_string =>'XXXXX\3', 
regexp_position =>1, 
regexp_occurrence =>0, 
regexp_match_parameter =>'i', 
expression =>'1=1', 
regexp_pattern =>'(\d\d\d)(\d\d)(\d\d\d\d)'
);
END;
4

1 に答える 1

0

これは 12.2 で修正されたバグです。

cursor_sharing=force の場合、以下のエラー ORA-28086 で失敗します: The data redaction policy expression has an error http://oraniltips.blogspot.in/2017/03/ora-28086-data-redaction-policy.html?m= 1

于 2017-03-29T01:41:09.177 に答える