最近剛好用Trigger,順便幫助自己記憶Trigger的用法
if exists(Select 1 From inserted) -- both update & insert
if exists(Select 1 From inserted) and exists(select 1 from deleted) -- only update
if exists(Select 1 From inserted) and not exists(select 1 from deleted) -- only insert
if exists(Select 1 From deleted) and not exists(select 1 from inserted) -- only delete
inserted指的是「insert & update」資料
deleted指的是「update & delete」資料
一般執行update時,是先delete再insert,並沒有進行insert,所以如果僅針對update時就要exists delete,這樣insert時就不會異動資料了!
留言
張貼留言