萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> Sqlserver與Mysql觸發器有什麼差別呢?

Sqlserver與Mysql觸發器有什麼差別呢?

   下面顯示的是觸發器用到的兩個表

  --創建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@

  這個只是觸發器之間的差別,像儲存過程,自定義函數等一定還有很大的區別,不過,現在的感覺是學完一種數據庫語言,其他的數據庫學起來也是那樣吧。

copyright © 萬盛學電腦網 all rights reserved