2017-10-28 2 views
0

表のグレードに加えられた変更を示す「検査」表の監査証跡を作成しようとしています。監査証跡表のトリガー

私は現在のグレードを変更するユーザー名と日付を示すトリガーの作成に固執しています。

私は周りを見回していましたが、何も見つかりませんでした。どんな助けでも本当に感謝します。

元のテーブル:私が作成した

 CREATE TABLE exam (
     student_no INT NOT NULL, 
     exam_code CHAR(2) NOT NULL, 
     grade TINYINT NULL, 
     FOREIGN KEY (student_no) REFERENCES student (student_no), 
     FOREIGN KEY (exam_code) REFERENCES course (exam_code)); 

監査テーブル:トリガー以下

 CREATE TABLE Audit (
     student_no INT NOT NULL, 
     exam_code CHAR(2) NOT NULL, 
     old_grade TINYINT NULL, 
     updated_grade TINYINT NULL, 
     Current_username VARCHAR(30), 
     Date_updated DATETIME 
    ); 


     CREATE TRIGGER audit_trail 
     ?????? 

答えて

0

はオプションをすることができます。 examテーブル内の任意の更新後

CREATE TRIGGER audit_trail 
AFTER UPDATE ON exam 
FOR EACH ROW 
BEGIN 
INSERT INTO Audit values(OLD.student_no,OLD.exam_code,OLD.grade,NEW.grade,CURRENT_USER(), CURRENT_TIMESTAMP); 
END; 

、上記トリガーはAuditテーブルに関連するすべての情報を挿入します。

あなたはデモhere

を確認することができます
関連する問題