Question

Based on this tutorial I have configured auditing on a database with these options:

AUDIT ALL BY db BY ACCESS;
AUDIT SELECT TABLE, UPDATE TABLE, INSERT TABLE, DELETE TABLE BY db BY ACCESS;
AUDIT EXECUTE PROCEDURE BY db BY ACCESS;

I prepare query from java and run a SELECT query. DBA_AUDIT_TRAIL table shows my SELECT query but SQL_TEXT and SQL_BIND fields are empty. How can I see them? Should I enable any other option? I'm using Oracle 11.2 Express Edition. Is this because It is express edition?

Was it helpful?

Solution

The column SQLTEXT and SQLBIND are populated only when AUDIT_TRAIL option is set to db, extended. Here is an example:

SQL> alter system set audit_trail=db,extended scope=spfile;

System altered

Restart the instance.

SQL> audit select on your_table;

Audit succeeded

SQL> select sqltext from sys.aud$ where obj$name = 'YOUR_TABLE';

SQLTEXT
--------------------------------------------------------------------------------
null

SQL> select count(*) from your_table;

  COUNT(*)
----------
         3

SQL> select sqltext from sys.aud$ where obj$name = 'YOUR_TABLE';

SQLTEXT
--------------------------------------------------------------------------------
select count(*) from your_table


SQL> 
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top