有个STUDENT表,如何打开对此表的审计功能,对该表的每次成功查询,增加,删除,修改操作都做审计追踪。
然后在关闭对上述表的审计功能。

解决方案 »

  1.   

    审计是对数据库数据的每一次变化做一个跟踪一个记录,比如说增加一条记录,修改一条记录,删除一条记录等等但是查询的时候,由于不对数据库的数据造成影响,所以审计不起作用,就是审计对select漠视了。
      

  2.   

    给你个基本的思路,自己具体测试一下:一. 修改初始化参数AUDIT_TRAIL=DB
    二. 打开对象审计功能
        SQL>AUDIT SELECT, UPDATE, INSERT, DELETE ON STUDENT;
    三. 执行对STUDENT表的操作
    四. 查询DBA_AUDIT_TRAIL表,查看审计情况,其中一个关键的SES_ACTIONS字段的解释为:Session summary (a string of 16 characters, one for each action type in the order ALTER, AUDIT, COMMENT, DELETE, GRANT, INDEX, INSERT, LOCK, RENAME, SELECT, UPDATE, REFERENCES, and EXECUTE. Positions 14, 15, and 16 are reserved for future use. The characters are: 
    - - None
    S - Success
    F - Failure
    B - Both五. 关闭审计
        SQL>NOAUDIT SELECT, UPDATE, INSERT, DELETE ON STUDENT;相关内容见:
    http://hi.baidu.com/%C8%FD%B7%C9%D4%C6/blog/item/75e2818ba06fc1789f2fb4c1.html
      

  3.   

    见下面的Oracle文档有关于audit语句的详细解释
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_4007.htm#i2059073