--%>

Maintaining audit trail of product table modifications

The accuracy of product table data is crucial and the Brwebean’s. owner prefers to have an audit file which contains information regarding all DML activity on the BB_PRODUCT table. This information must point out the user id of the user running a DML statement, the date, the original values of the modified rows and the new values. The audit table requires to track specific columns of concern, comprising PRODUCTNAME, PRICE, SALESTART, SALEEND, and SALEPRICE. Build a table named BB_PRODCHG_AUDIT which can hold the relevant data. Then create a trigger named BB_AUDIT_TRG which fires on update to this table whenever one of the particular columns in the BB_PRODUCT table is modified.
 
Utilize the following update statement to test your trigger. Then, complete a rollback and disable the trigger whenever finished so that it does not affect other assignment questions.

Update bb_product set salestart = ’05-MAY-03’, saleend = ’12-MAY-03’, saleprice = 9 where idproduct = 10;

E

Expert

Verified

CREATE TABLE  "BB_PRODCHG_AUDIT"
   (    "PRODUCTNAME" VARCHAR2(25),
    "PRICE" NUMBER(6,2),
    "SALESTART" DATE,
    "SALEEND" DATE,
    "SALEPRICE" NUMBER(6,2)
   )

CREATE OR REPLACE TRIGGER  "BB_AUDIT_TRG"
BEFORE
update on "BB_PRODUCT"
for each row
begin
INSERT INTO BB_PRODCHG_AUDIT VALUES (:NEW.IDPRODUCT,:NEW.PRICE,:NEW.SALESTART,:NEW.SALEEND,:NEW.SALEPRICE);
end;
/
ALTER TRIGGER  "BB_AUDIT_TRG" DISABLE
/

   Related Questions in Programming Languages

  • Q : Input and output formatting in C++

    Input output formatting in C++: C++ support

  • Q : What is Disk drive Disk drive : It is a

    Disk drive: It is a hardware device employed to store the data. They come in numerous forms, like floppy disks, compact disks, and hard disks.

  • Q : Explain Synchronized statement

    Synchronized statement: It is a statement in which an object-lock should be obtained for the target object prior to the body of the statement and can be entered. Employed to enclose a critical section in order to save a race hazard.

  • Q : Explain Increment operator Increment

    Increment operator: The operator (++) which adds one to its operand. It consists of two forms: pre-increment (++x) and post-increment (x++). In its pre-increment form, the outcome of the expression is the value of its argument subsequent to the increm

  • Q : Explain the term an XHTML element

    Explain the term an XHTML element attribute.

  • Q : Define Preempt Preempt: It is the

    Preempt: It is the presently executing thread might be preempted, or forced to give up control, by a higher priority thread which becomes eligible to run throughout its time slice.

  • Q : Explain Primitive Type Abstractions

    Primitive Type Abstractions: An effective way to reduce the state space of a program is to replace the primitive types with the corresponding abstractions that encapsulate all the possible operations that are performed on these types.

    Q : Explain the way to back-up active

    Explain the way to back-up active directory.

  • Q : Define Fully evaluating operator Fully

    Fully evaluating operator: An operator which computes all of its arguments to generate an outcome. Standard arithmetic operators, like +, are totally evaluating. In contrary, some Boolean operators, like &&, are short-circuit operators.

  • Q : Determine incorrect tags in HTML What

    What is incorrect with my < br > Tags?