I inherited a non-production database that had been auditing to the DB (audit_trail=DB) without any cleanup process in place. The sys.aud$ table had over 8 million rows of data. Before I set up the cleanup jobs, I decided to remove all the data in the table. I issued a truncate:
Error starting at line : 16 in command - truncate table sys.aud$ Error report - SQL Error: ORA-00942: table or view does not exist 00942. 00000 - "table or view does not exist" *Cause: *Action:
A select on dba_objects indicated that sys.aud$ was a synonym
select owner, object_name, object_type from dba_objects where object_name = 'AUD$'; OWNER OBJECT_NAME OBJECT_TYPE -------- ----------- ----------- SYS AUD$ SYNONYM SYSTEM AUD$ TABLE
The table is SYSTEM.AUD$, but I thought I would check anyway:
select table_owner, table_name from dba_synonyms where owner = 'SYS' and synonym_name = 'AUD$'; TABLE_OWNER TABLE_NAME ------------------------------ ------------------------------ SYSTEM AUD$
Truncated the base table:
truncate table system.aud$;