下面顯示的是觸發器用到的兩個表
--創建sc表CREATETABLE[sc]([ScId]intNOTNULL,[SNo]intNOTNULL,[CNo]intNOTNULL,[Score]intDEFAULTNULL,PRIMARYKEY([ScId])
);
--添加履歷表CREATETABLEscore_record (
SrIdintNOTNULL,
SNointNOTNULL,
CNointNOTNULL,
OldScoreintNOTNULL,
NewScoreintNOTNULL,
UpdateTimedatetimeNOTNULL,PRIMARYKEY(SrId),
);
下面顯示的是Mysql寫的觸發器
--Mysql寫的觸發器--創建觸發器,將修改前後的成績插入到履歷表DROPTRIGGERIFEXISTS`trigger_sr`;
DELIMITER//CREATETRIGGER`trigger_sr` AFTERUPDATEON`sc`FOREACH ROWBEGININSERTINTOscore_recordSETSNo=new.SNo,
CNo=new.CNo,
OldScore=old.Score,
NewScore=new.Score,
UpdateTime=NOW() ;END//DELIMITER ;
下面顯示的是Sqlserver寫的觸發器
--Sqlserver寫的觸發器--創建觸發器,將修改前後的成績插入到履歷表CREATETRIGGERtrigger_sronscforupdateasdeclare@
這個只是觸發器之間的差別,像儲存過程,自定義函數等一定還有很大的區別,不過,現在的感覺是學完一種數據庫語言,其他的數據庫學起來也是那樣吧。