Designing principle of auditing the DML on a specific table?

Hi All,
What is the designing principle of auditing the DML performed on a table? or a bunch of tables?
I know Oracle provides the auditing capability and there is Fine-Grained auditing available to use to keep track of row/column level changes.
However, in this case, since we want to keep all the changing history of the table, and we want to do it our own way, we don`t want to use the Oracle`s FGA.
the scenario is:
I have a table with 40 columns, and any one of them might be updated, including the primary key. (it sucks and bad)
we want to keep track of all the changes performed on this table, mainly DML.
the table structure I came up with is as below and it doesn`t look good or feel right.
So, could you share some experiences of how your design the table in this scenario? and the basic principle or rule to follow?
CREATE TABLE TBS (COL1 VARCHAR2(10), COL2 VARCHAR2(20), COL3 VARCHAR2(20), COL4 VARCHAR2(30)....., COL40 VARCHAR2(50));
CREATE TABLE tbs_audit (
SEQ_NUM NUMBER,
USER_NAME VARCHAR2(50),
UPD_DT TIMESTAMP,
OPERATION_TYPE VARCHAR2(20),
COL1_OLD_VAL VARCHAR2(10),
COL2_OLD_VAL VARCHAR2(20),
COL40_OLD_VAL VARCHAR2(50));Thanks in advance!

I would definitely put the auditing records into another table.
What I am struggling with is:
whether should I record the changed columns only or the whole row? to me, the first one is better. it saves space, and it comes easy when I want to display the changed history of certain columns.
And for the first one, should I use table structure like 1) or 2)? which one is better? why?
1)
CREATE TABLE tbs_audit (
SEQ_NUM NUMBER,
USER_NAME VARCHAR2(50),
UPD_DT TIMESTAMP,
OPERATION_TYPE VARCHAR2(20),
COL1_OLD_VAL VARCHAR2(10),
COL2_OLD_VAL VARCHAR2(20),
COL40_OLD_VAL VARCHAR2(50));
2)
CREATE TABLE tbs_audit (
SEQ_NUM NUMBER,
USER_NAME VARCHAR2(50),
UPD_DT TIMESTAMP,
OPERATION_TYPE VARCHAR2(20),
COL_name VARCHAR2(10),
COL_OLD_VAL VARCHAR2(20)
);

Similar Messages

  • SQL Server 2000 auditing/tracking DML changes on specific tables.

    Hello,
    We would like to audit/track all DML activities on couple of tables which reside on SQL Server 2000. Triggers are an option we think but thought that would impact performance because of activity on those tables. Could someone please suggest any other best
    options that are possible with SQL Server 2000 to capture these changes.
    Thanks,

    Hello,
    You may consider third party tools that may still support SQL Server 2000. The following tool supported SQL Server 2000 a few years
    ago, not sure about today:
    http://www.apexsql.com/sql_tools_comply.aspx
    Server side traces may be another option:
    http://msdn.microsoft.com/en-us/library/cc293613.aspx
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • SQL Server 2000 auditing on DML changes on user tables to user databases

    Please let me know if you know if there is any procedure or steps to determine DML changes on user tables in database.

    Hello,
    You can use triggers as shown in the following article:
    http://sqlserver2000.databases.aspfaq.com/how-do-i-audit-changes-to-sql-server-data.html
    You may also consider third party tools that may still support SQL Server 2000. The following tool supported SQL Server 2000 a few years
    ago, not sure about today:
    http://www.apexsql.com/sql_tools_comply.aspx
    Server side traces may be another option:
    http://msdn.microsoft.com/en-us/library/cc293613.aspx
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • Extended Events: How to capture DML on a specific table

    I want to capture Select/Insert/Update/Delete commands on a specific table, lets say - dbo.MyTbl.
    I can use extended events to analyze the completed TSQL commands in order to find dbo.MyTbl or [dbo].[MyTbl] (I assume the schema is always mentioned explicitly). The problem is that the table could be accessed through a view, and it won't be mentioned explicitly
    in the TSQL command.
    Is there a way to solve this problem through Extended Events, or a better solution for such a problem?
    El castellano no es mi lengua materna. Discúlpenme por los errores gramaticales, y, si pueden, corríjanme en los comentarios, o por correo electrónico. ¡Muchas gracias! Blog: http://about.me/GeriReshef

    Seems like you are looking for the Server Audit funtionality. It requires certain versions/editions. Server Audit is implemented using Extended Events but the underlying X/E mechanisms that Server Audit is using isn't directly available throuh X/E.
    Tibor Karaszi, SQL Server MVP |
    web | blog

  • Trigger for logging changes(DML changes) for All tables in Schema

    Hi ,
    Is there a way to create a schema level trigger to audit the DML changes that affect all the tables.I need the output in my log table as
    1) the table name on which the DML occurred
    2) type of DML
    3) column names affected.
    I know this can be achieved through enabling AUDIT or by creating dynamically, triggers for each tables...
    Is there a way to create a single trigger to achieve this??

    It's not possible to create DML trigger on schema level
    I think the only way is to create the triggers dynamically for each table..
    Re: Schema level Database triggers by Kamran Agayev
    Edited by: jeneesh on Oct 12, 2012 6:39 PM

  • Ref:Logging the DML operations on a schema

    Hello,
    I want to log the DML operations on our Master Schema(This schema is accessed by 4-6 applications apart from there own application schemas). I want to log the DML operations done by x.application. Is there any easy way to do it. One solutions is writting the triggers on each table of Master schema and inserting the transactions into audit_schema(it is replica of master schema). Is there any other way to do it. Any solution for this issue is appreciated. Thanks in advance.

    Is there any other way to do itEnable auditing, see the security guide:
    http://download.oracle.com/docs/cd/B19306_01/network.102/b14266/toc.htm
    http://download.oracle.com/docs/cd/B19306_01/network.102/b14266/auditing.htm#i1008289
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/security.htm#sthref2929

  • Audit All DML and DDL on an Application Schema

    Hello;
    I have a requirement to audit all DML and DDL on an Application Schema (Lets say SCOTT). I have set:
    ALTER SYSTEM SET audit_trail = XML, EXTENDED scope=spfile; -- Want my audit log on the OS with Bind and SQL.
    ALTER SYSTEM SET AUDIT_SYS_OPERATIONS = TRUE scope=spfile; -- Want to audit sysdba and sysoper activity
    audit create session; -- Want to see both logins and failed logins
    How would I get all DML and DDL on an Application Schema (SCOTT)?
    I am using 11iR1 Standard Edition.

    Have look at system_privilege_map and find all the options you need to audit...
    or you can use the below script..
    SELECT 'audit ' ||LOWER(name) || ' by app_user;'
    FROM system_privilege_map;
    if you want to filter-out the one you have already audited, then use dba_priv_audit_opts ...
    Hope this info will be useful to you...
    Thanks,

  • XSS/ESS Web Dynpro Design Principles

    Dear NetWeaver Web Dynproers
    Kind of wondering if any of you have any high level/detailed documentation on Web Dynpro Design principles used by SAP while building XSS business package?
    Looking at the Web Dynpro XSS Code there seems to use a consistent design principals and naming convections that have followed like Cc.., Fc.. , Vc.. and also uses advanced Web Dynpro programming, like Guided Procedures and Floor Manger patterns. I am really excited with the implementation and would like to know more about these topics and kind of understand the core design principals behind it before I make any enhancements and customizations.
    Are there any links and documentation that kind of covers all this...? Is there any cookbook on Web Dynpro enhancements and customizations for XSS for keeping the core design intact and kind of natural bending the custom code to it?
    Any help on this is greatly appreciated.
    Cheers!!

    Hi Phani,
    I am not sure if there is any documentation released about the WebDynpro Design Standards being followed by SAP in ESS and XSS WebDynpro Applications.
    But I can throw some light on the same.
    XSS is the central component which will be used in all probably all the SAP Self Services going ahead. This is being done to provide all the Self Services, consitent User Interface.
    FPM - The floorplan manager (FPM) is the central part of the XSS architecture. It can be said to be the base of all self sevices. Any WebDynpro application that implements FPM is known as FPM Application.
    So if you want to design your own custom application using FPM, you should know the following.
    FPM provdes 4 basic interfaces that are implemented by the Self Services WebDynpro Applications,
    1) IVAC (for the Visual Application Component - Vc)
    2) IBLC (for the Business Logic Component - Fc)
    3) IXssAppConf ( for the Configuration Component - Cc)
    4) IFPM (It gives the self service application access to the FPM and its utility classes)
    You have to define the above interfaces as the implemented interfaces and then you can implement their functions. To start with first analyze any ESS application like this
    1) Cc(here all the configuration is done for the application. You will also see how a persepective is being built and how a navigation path is being defined.
    2) Fc(here all the Model are executed)
    3) Vc(This contain the view or Visual Component)
    Hope this helps in some basic understanding of Self Service Applications.
    Regards,
    Shubham

  • Auditing the repository changes

    Is it possible to audit the changes done to repository. In a multiuser/developer environment, I would like to know if we can give separate logins to individual developers so that we can have audit trail on the changes done to repository for better control and accountability.
    Please advise.

    Hi
    You can create auditing details for individual developers by creating design repository login for each developer in the team and that will allow you to query the audit view 'ALL_IV_OBJECTS' to get information regarding last deployment etc.
    Cheers,
    Sharad Srivastav

  • LTA is getting Double when EE changes Department /Designation in mid of the

    Hi Sapiants,
    LTA amount is getting Double when EE changes Department /Designation in mid of the month. what is the reason behind this problem.
    Regards
    vinmax

    Dear Delik,
    Now double appearance of LTA amount is gone by assigning the spec . to Pr.Cl. - 06 .Your answer helped buddy in this egard. but a new problem is coming. system is populaating some amount with a wagetype. though it is not part of IT 0008.
    Thanx
    Vinmax
    Edited by: kvin kvin on Jul 25, 2008 12:28 PM
    Edited by: kvin kvin on Jul 25, 2008 12:29 PM

  • How to Audit the data displayed within a Webi report

    Hi All,
    We have BOBJ XI R2 SP4 installed on our server.
    One of the requirements is to audit the data the user has viewed through Canned reports and also Adhoc reports created in Webi.
    I understand that we can audit what reports are accessed by the user, but not sure how to audit the data within the report. Could someone please let me know if auditing data can be acheived form SDK ? If so how ?
    Thanks,
    Sireesha

    Pablo,
    The following should get you started;
    This is a report to pull Universe Name, Report Name, Action Time (last refreshed), Action Duration (execution time), User Name and Object Name (universe objects used in reports).
    The Result Objects are as follows:
    Object Name from Actions/Action Details
    Action Time from Actions
    Action Duration from Actions
    Action Type from Actions
    Action Type Detail from Actions (detail object associated with Action Type)
    User Name from Actions
    Document Name from Actions/Document
    Universe Name from Actions/Action Details
    The Query Filters are as follows:
    Action Time between Day1 And Day2
    Note: The Query Filter is necessary (obviously) only to restrict the size of the query. I wouldn't run this query without a filter on demand. Depending on the size of your deployment, you might want to restrict the query initially to a specific universe/list of universes while testing.
    At the report level, I moved Universe Name and Document Name in to (nested) sections.
    i.e.
    Section on: Universe Name
    Section on: Document Name
    Table
    Another option would be to retrieve this information from the CMS tables using WID Scanner [here|http://www.forumtopics.com/busobj/viewtopic.php?t=80856]
    The last option would be to use the Report Engine SDK (for Webi) to write a program extract this information from the CMS tables and pass it to another table. WID scanner (above) does effectively the same thing, passes the info to an MS Access table (if I remember correctly..I may be wrong. I have'nt used it since it last tried to create a report to extract all used objects.)
    Best,
    Srinivas

  • SharePoint PPS 2013 Dashboard Designer error "Please check the data source for any unsaved changes and click on Test Data Source button"

    Hi,
    I am getting below error in SharePoint PPS 2013 Dashboard Designer. While create the Analysis Service by using "PROVIDER="MSOLAP";DATA SOURCE="http://testpivot2013:9090/Source%20Documents/TestSSource.xlsx"
    "An error occurred connecting to this data source. Please check the data source for any unsaved changes and click on Test Data Source button to confirm connection to the data source. "
    I have checked all the Sites and done all the steps also. But still getting the error.Its frustrating like anything. Everything is configured correctly but still getting this error.
    Thanks in advance.
    Poomani Sankaran

    Hi Poomani,
    Thanks for posting your issue,
    you must have to Install SQL Server 2012 ADOMD.Net  on your machine and find the browse the below mentioned URL to create SharePoint Dashboard with Analysis service step by step.
    http://www.c-sharpcorner.com/UploadFile/a9d961/create-an-analysis-service-data-source-connection-using-shar/
    I hope this is helpful to you, mark it as Helpful.
    If this works, Please mark it as Answered.
    Regards,
    Dharmendra Singh (MCPD-EA | MCTS)
    Blog : http://sharepoint-community.net/profile/DharmendraSingh

  • Are there plans to update livecycle designer to conform with the CC Family of Tools?

    I am relatively new to using adobe LiveCycle Designer. I have to say it's a pretty great piece of software.  There are some things in it that really bother me though.
    For example, you can't just drag guides from the rulers. There's no smart guides. The shortcuts that work in every other program don't work for LC.
    The design is 1990 ish and a myriad of other small annoyances. I was just wondering if Adobe has plans to rework LCD to conform to the CC Family Standards.
    Don't get me wrong LiveCycle is the only program in it's class and has been a tremendous help. I just feel it's not up to adobe standards.
    Also, Where's the mac version? I've been having to run ES3 in VMWare due to the fact I only wanted LC Designer and not all the other phooey that comes with it.

    Hi,
    Designer was initially a product from a company named JetForm which was acquired by Adobe in 2002 and its interface hasn't been changed that much by Adobe.
    Here some hints for you:
    If you double click a ruler you'll be able to edit the Drawing Aids.
    You can set snap to grid or to guideline etc.
    In ES3 and newer you also can activate orientation by page center or other objects which is quite similar to the smart guides you may know from InDesign.
    Draging guides from the rulers also works, but only from the upper left corner, not for every ruler separately.
    From the Extras menu you also can create your own shortcuts.
    There has never been a MAC version of Designer and I think there never be one.

  • I want  to design a News like the *LInklist* by XML Form Builder

    Hello:
       Everyone!
       Now I have another problem about XML Form Builder
       I want  to design a News like the LInklist by XML Form Builder
       I want the result,For Example
    SAP News
           1news1
           2news2
           3news3
    who can give me some adviseon about how to disign the Edit, Show and Renderlistitem in XML
    Thanks a lot
    Hope your help!

    Hi,
    In XML Form
    1) Edit form is used for designing the user interface.
    2) Show form is used for displaying the xml form to the end user
    3) RenderListItem is used for  rendering the xml form into a small description like 1News1, 2news2  etc..
        Here you need to display only the heading of the xml form
    After you create the xml form
    Create Layout set  where you need to give the proerties like xml renderer form , no of items to display etc...
    Thanks&Regards,
    Raghu

  • How to audit the the Authentication and Authorization in AM.

    I'm using AM7, I want to know how can I audit the Authentication and Authoriztion, for example, who? from where? when? Authentication/Authorization to which application?
    I looked for the log files, but find they can't be used to show an audit result directly, is there any tool to do the audit job?
    Thanks!

    Assuming that you are using a Unix platform to run JES AM, you can find accesslog at /var/opt/SUNWam/logs. If you dont have any logs there, may be you have enable them in the AMConfig.properties and recycle AM.
    Each WebServer or J2EE Web Container that is protected by JES Policy Agent is capable of producing Audit logs which will carry information you are looking for. For example every HTTP request that passes through a protected WebServer or Webcontainer can log UserID, SSOToken, Time of access, Authorization result, resource requested. By default PolicyAgents dont log "Success" authorizations. You can change that by enabling "LOG_BOTH" on the logging attribute.
    If you can customize the WebServer access logs, then you can trap the User's source IP, UserID along with all other standard things that you can log on a webserver such as any HTTP Header element.
    JES has pretty robust logging mechanism built for security audits.
    If you still cant find what you are looking for, then be specific about where you are running into problems.
    -Dexthor

Maybe you are looking for

  • Problems with television

    I have long used an iMac G4 with an Apple Video Adapter to connect the former to a television via composite video. Never had any problems, until now. For some reason, the iMac now sees the TV as a VGA monitor (so it says in the Displays Preference Pa

  • AR Credit note

    An AR credit note has been copied from an AR Invoice, with the $ values identical. Upon saving the AR Credit note, the following message appears. 'Credit memo total is greater than open balance amount'. Can you please advise why this message is occur

  • Safari 4.0.3 works great ...

    Safari 4.0.3 runs like before the updater ... No, problems ad all ... Dimaxum

  • Mac Pro 2008 USB port problems - persistent

    Hello all, I have a 2008 Mac Pro - standard config : 2.8Ghz 2Go Ram ATI 2600. At the outset I did a clean install onto a 1To Seagate drive. From day 1, and before adding any third party applications, the aluminium keyboard would suddenly stop working

  • Can I upgrade from Creative Suite 5.5 Design Premium to CS 6?

    Can I upgrade from Creative Suite 5.5 Premium to CS 6??