SQL server從入門精通----觸發器

來源:互聯網
上載者:User

標籤:

-----觸發器-------------------        ---觸發器:是一種特殊的預存程序,是在某個操作發生自動執行的一個操作select * from Q_user--------------insert 觸發器--------------    if(OBJECT_ID(‘tr_insert‘,‘tr‘)) is not null    drop trigger tr_insert        create trigger tr_insert    on Q_user  --基於哪個表建立的觸發器(就是哪個表在發生插入操作時自動觸發)    for insert --做什麼操作時什麼時候自動發生              --操作upate insert delete              --什麼時候 for 正在操作時發生, after 操作之後時發生,instead of 廢除當前的操作,執行觸發的操作    as            --在插Q_user時,同時,插入userInformation  --   declare @uid varchar(30),@uName varchar(30)      --select @uid=uid,@uName=uName from  inserted       ----擷取 剛剛操作之後產生對應的行     ----(insert 代表觸發的基於表)     --insert into userInformation(uid,name) values(@uid,@uName)     ----也可以insert select 語句     insert into userInformation(uid,name) select uid,uName from inserted     go    --test     insert into Q_user(uName,uPwd) values(‘觸發器‘,‘11111‘)    select * from userInformation    ----測試成功    ------update觸發器--------------    在跟新Q_user標的同事跟新userInformation的 部分欄位    create trigger tr_update    on Q_user    after update    as      declare @uid varchar(30),@name varchar(30)       select @uid=uid,@name=uName from  inserted   --擷取 剛剛操作之後產生對應的行      update userInformation set name=@name where uid=@uid            go    update Q_user set uName=‘更新觸發器‘ where uName=‘觸發器‘    select * from userInformation    ----delete觸發器---------    因為userInformation裡面的uid 是Q_user裡面的外鍵,在不使用串聯刪除的時候報錯    delete Q_user where uId=‘10002‘ --DELETE 語句與 REFERENCE 約束"DF_uid"衝突。該衝突發生於資料庫"Qzone",表"dbo.userInformation", column ‘uid‘         --級聯 就是當一個表和另一個表存在外鍵的關係時 就可以使用串聯更新與刪除了     --但前提是此表設定了級聯     --設定級聯的方法 建立串聯更新,,     在外鍵語句後面加   ON   DELETE   CASCADE  ON   UPDATE   NO CASCADE,                                                              --foreign key (userId) references UserInfo(UserId) on delete cascade             update  Q_user set uName=‘串聯更新‘ where uName=‘更新觸發器‘      select * from Q_user ;     select * from userInformation            用觸發器實現串聯刪除    ---遊標---------        ---是處理資料的一種方法,可以查看或者處理結果集中的資料        --利用遊標來查詢指定區間的資料 (比如查詢10-40直接的資料包含10-40)        print (4.5)    

 

SQL server從入門精通----觸發器

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.