版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、SQL觸發(fā)器的使用及語法觸發(fā)器的使用及語法定義:何為觸發(fā)器?在SQLServer里面也就是對(duì)某一個(gè)表的一定的操作,觸發(fā)某種條件,從而執(zhí)行的一段程序。觸發(fā)器是一個(gè)特殊的存儲(chǔ)過程。常見的觸發(fā)器有三種:分別應(yīng)用于Update事件。我為什么要使用觸發(fā)器?比如,這么兩個(gè)表:CreateTableStudent(學(xué)生表StudentIDintprimarykey學(xué)號(hào)....)CreateTableBrowRecd(學(xué)生借書記錄表BrowRecdin
2、tidentity(11)流水號(hào)StudentIDint學(xué)號(hào)BrowDatedatetime借出時(shí)間ReturnDAteDatetime歸還時(shí)間...)用到的功能有:1.如果我更改了學(xué)生的學(xué)號(hào)我希望他的借書記錄仍然與這個(gè)學(xué)生相關(guān)(也就是同時(shí)更改借書記錄表的學(xué)號(hào))2.如果該學(xué)生已經(jīng)畢業(yè),我希望刪除他的學(xué)號(hào)的同時(shí),也刪除它的借書記錄。等等。這時(shí)候可以用到觸發(fā)器。對(duì)于1,創(chuàng)建一個(gè)Update觸發(fā)器:CreateTriggertruStuden
3、tOnStudent在Student表中創(chuàng)建觸發(fā)器fUpdate為什么事件觸發(fā)As事件觸發(fā)后所要做的事情ifUpdate(StudentID)beginUpdateBrowRecdSetStudentID=i.StudentIDFromBrowRecdbrddedid和ed臨時(shí)表Wherebr.StudentID=d.StudentIDend理解觸發(fā)器里面的兩個(gè)臨時(shí)的表:ded。注意d與ed分別表示觸發(fā)事件的表“舊的一條記錄”和“新的一
4、條記錄”。一個(gè)數(shù)據(jù)庫系統(tǒng)中有兩個(gè)虛擬表用于存儲(chǔ)在表中記錄改動(dòng)的信息,分別是:卷煙品牌VAR(40)PRIMARYKEYNOTNULL購(gòu)貨商VAR(40)NULL銷售數(shù)量INTNULL銷售單價(jià)MONEYNULL銷售金額MONEYNULL)GO業(yè)務(wù)規(guī)則:庫存金額=庫存數(shù)量庫存單價(jià)業(yè)務(wù)規(guī)則。CREATETABLE卷煙庫存表(卷煙品牌VAR(40)PRIMARYKEYNOTNULL庫存數(shù)量INTNULL庫存單價(jià)MONEYNULL庫存金額MONE
5、YNULL)GO創(chuàng)建觸發(fā)器,示例1創(chuàng)建觸發(fā)器[T__卷煙庫存表],這個(gè)觸發(fā)器較簡(jiǎn)單。說明:每當(dāng)[卷煙庫存表]發(fā)生動(dòng)作,則引發(fā)該觸發(fā)器。觸發(fā)器功能:強(qiáng)制執(zhí)行業(yè)務(wù)規(guī)則,保證插入的數(shù)據(jù)中,庫存金額=庫存數(shù)量庫存單價(jià)。注意:[ED]、[D]為系統(tǒng)表,不可創(chuàng)建、修改、刪除,但可以調(diào)用。重要:這兩個(gè)系統(tǒng)表的結(jié)構(gòu)同插入數(shù)據(jù)的表的結(jié)構(gòu)。IFEXISTS(NAMEFROMSYSOBJECTSWHEREXTYPE=’TR’NAME=’T__卷煙庫存表’)T
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- sql觸發(fā)器實(shí)例
- 觸發(fā)器語法
- sql server 2000觸發(fā)器
- 觸發(fā)器語法詳解
- oracle 觸發(fā)器語法及實(shí)例
- sql中如何創(chuàng)建觸發(fā)器
- oracle觸發(fā)器的創(chuàng)建及使用!!
- sql觸發(fā)器使用教程和命名規(guī)范
- sqlserver觸發(fā)器的使用
- 觸發(fā)器的創(chuàng)建和使用
- 通過觸發(fā)器跟蹤對(duì)表的修改sql語句
- sql server 2000中的觸發(fā)器使用(good)文庫
- sql server2008觸發(fā)器學(xué)習(xí)筆記
- sql server 2005 學(xué)習(xí)筆記之觸發(fā)器簡(jiǎn)介
- sql觸發(fā)器全過程(含實(shí)例講解)
- sql server2008觸發(fā)器練習(xí)題
- sql server觸發(fā)器存入遠(yuǎn)程數(shù)據(jù)庫
- 主從rs觸發(fā)器,jk觸發(fā)器
- 基本rs觸發(fā)器和d觸發(fā)器
- sql 2005 的存儲(chǔ)過程和觸發(fā)器調(diào)試大法(原創(chuàng))
評(píng)論
0/150
提交評(píng)論