3 Replies Latest reply on Jun 17, 2014 1:54 PM by JudWilliford

    ORA-28138: Error in Policy Predicate




      Maz I have a question?

      I would like to audit actions on one table but I am getting still this error. On MOS or google says that "Only simple predicates (i.e., those with just one condition) are allowed in the audit_condition when DML statements are audited by FGA. You cannot, for example, define a policy to audit DML with an audit_condition such as 'SALARY >= 150000 OR EMPID = 100'. If you create the policy, it will be successful; but the updates to the table will fail with the error ORA-28138: Error in Policy Predicate. Similarly, you cannot define a subquery in the audit_condition; it must be a simple predicate."


      I dont belive that it's impossible to do more contitions. Here is may policy.



          object_schema   => 'CRPDTA',

          object_name     => 'F4211',

          policy_name     => 'audit_f4211',

          audit_condition => 'SDDELN=0 and SDNXTR>530 and SDNXTR<999 and SDSHPN>0',

          audit_column    => 'SDDELN','SDNXTR'

          audit_trail     => DBMS_FGA.DB+EXTENDED,

          statement_types => 'UPDATE');




      JDEdwords is running on that database and I woulf like to catch same action there.


      Whan could be worng in my statemt?


      Thank you.