SQL Server一個表添加資料,引發另一個表更新資料 的一個簡單觸發器例子

來源:互聯網
上載者:User
create trigger updateUserRoleToUserLoginon tb_UserRolefor insertasbegin update tb_UserLogin set RoleID=t.RoleID   from tb_UserLogin tend 

以上代碼的簡單意思就是:

當tb_UserRole表中有資料插入時,串聯更新tb_UserLogin表中的RoleID欄位值為添加記錄中RoleID的值。

案例二:

有這樣一種情況,有兩張表 t1 和t2,後來由於變更,t2表中需要增加一個欄位,這個欄位正是t1表中的欄位值(ps:t1和t2之間有外間關聯)

現在保持原先的插入語句不變,但在插入資料的同時,希望修改後的t2表中新增的欄位能同步t1表中的值,怎麼辦呢?

--針對即時險情同步citycode表create trigger tr_inserton 即時險情after insertasdeclare @id int,@name varchar(20),@code varchar(20)begin  select @id=[OBJECTID],@code=[所屬地區] from inserted;  select @name=[cityname] from citycode where citycode=@code;  update 即時險情 set [所在縣]=@name where [OBJECTID]=@id;end;insert into 即時險情(上傳時間,所屬地區,所在縣)  values('2011-10-18','1001','');select * from 即時險情;
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.