下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
千里之行,始于足下讓知識帶有溫度。第第2頁/共2頁精品文檔推薦Sqlserver技術(shù)知識點之二十.復(fù)習(xí)課程Sqlserver技術(shù)學(xué)問點之二十
系統(tǒng)存儲過程就是系統(tǒng)創(chuàng)建的存儲過程,目的在于能夠便利地從系統(tǒng)表中查詢信息或完成與更新數(shù)據(jù)庫表相關(guān)的管理任務(wù)或其它的系統(tǒng)管理任務(wù)。系統(tǒng)過程以“sp_"_為開始,在Master數(shù)據(jù)庫中創(chuàng)建并保存在該數(shù)據(jù)庫中,為數(shù)據(jù)庫管理者全部。一些系統(tǒng)過程只能由系統(tǒng)管理員使用,而有些系統(tǒng)過程通過授權(quán)可以被其它用戶所使用。
系統(tǒng)存儲過程主要包括以下幾類:(這里主要給出每類系統(tǒng)過程中常常使用的系統(tǒng)過程)
在上面幾節(jié)我們介紹了普通意義的存儲過程,即用戶自定義的存儲過程和系統(tǒng)存儲過程。本節(jié)將介紹一種特別的存儲過程,即觸發(fā)器。在余下各節(jié)中我們將對觸發(fā)器的概念、作用以及對其的使用辦法作詳盡介紹,使讀者了解如何定義觸發(fā)器,創(chuàng)建和使用各種不同復(fù)雜程度的觸發(fā)器。
12.5.1觸發(fā)器的概念及作用
觸發(fā)器是一種特別類型的存儲過程,它不同于我們前面介紹過的存儲過程。觸發(fā)器主要是通過大事舉行觸發(fā)而被執(zhí)行的,而存儲過程可以通過存儲過程名字而被直接調(diào)用。當(dāng)對某一表舉行諸如UPDATE、INSERT、DELETE這些操作時,SQLServer就會自動執(zhí)行觸發(fā)器所定義的SQL語句,從而確保對數(shù)據(jù)的處理必需符合由這些SQL語句所定義的規(guī)章。
觸發(fā)器的主要作用就是其能夠?qū)崿F(xiàn)由主鍵和外鍵所不能保證的復(fù)雜的參照完整性和數(shù)據(jù)的全都性。除此之外,觸發(fā)器還有其它許多不同的功能:
(1)強化約束(Enforcerestriction)
觸發(fā)器能夠?qū)崿F(xiàn)比CHECK語句更為復(fù)雜的約束。
(2)跟蹤變化Auditingchanges
觸發(fā)器可以偵測數(shù)據(jù)庫內(nèi)的操作,從而不允許數(shù)據(jù)庫中未經(jīng)許可的指定更新和變化。
(3)級聯(lián)運行(Cascadedoperation)。
觸發(fā)器可以偵測數(shù)據(jù)庫內(nèi)的操作,并自動地級聯(lián)影響囫圇數(shù)據(jù)庫的各項內(nèi)容。例如,某個表上的觸發(fā)器中包含有對另外一個表的數(shù)據(jù)操作(如刪除,更新,插入)而該操作又導(dǎo)致該表上觸發(fā)器被觸發(fā)。
(4)存儲過程的調(diào)用(Storedprocedureinvocation)。
為了響應(yīng)數(shù)據(jù)庫更新觸,發(fā)器可以調(diào)用一個或多個存儲過程,甚至可以通過外部過程的調(diào)用而在DBMS(數(shù)據(jù)庫管理系統(tǒng))本身之外舉行操作。
由此可見,觸發(fā)器可以解決高級形式的業(yè)務(wù)規(guī)章或復(fù)雜行為限制以及實現(xiàn)定制記錄等一些方面的問題。例如,觸發(fā)器能夠找出某一表在數(shù)據(jù)修改前后狀態(tài)發(fā)生的差異,并按照這種差異執(zhí)行一定的處理。此外一個表的同一類型(INSERT、UPDATE、DELETE)的多個觸發(fā)器能夠?qū)ν环N數(shù)據(jù)操作實行多種不同的處理。
總體而言,觸發(fā)器性能通常比較低。當(dāng)運行觸發(fā)器時,系統(tǒng)處理的大部分時光花費在參照其它表的這一處理上,由于這些表既不在內(nèi)存中也不在數(shù)據(jù)庫設(shè)備上,而刪除表和插入表總是位于內(nèi)存中。可見觸發(fā)器所參照的其它表的位置打算了操作要花費的時光長短。
12.5.2觸發(fā)器的種類
SQLServer2000支持兩種類型的觸發(fā)器:AFTER觸發(fā)器和INSTEADOF觸發(fā)器。其中AFTER觸發(fā)器即為SQLServer2000版本以前所介紹的觸發(fā)器。該類型觸發(fā)器要求惟獨執(zhí)行某一操作(INSERTUPDATEDELETE)之后,觸發(fā)器才被觸發(fā),且只能在表上定義??梢詾獒槍Ρ淼耐徊僮鞫x多個觸發(fā)器。對于AFTER觸發(fā)器,可以定義哪一個觸發(fā)器被最先觸發(fā),哪一個被最后觸發(fā),通常使用系統(tǒng)過程sp_settriggerorder來完成此任務(wù)。
INSTEADOF觸發(fā)器表示并不執(zhí)行其所定義的操作(INSERT、UPDATE、DELETE),而僅是執(zhí)行觸發(fā)器本身。既可在表上定義INSTEADOF觸發(fā)器,也可以在視圖上定義INSTEADOF觸發(fā)器,但對同一操作只能定義一個INSTEADOF觸發(fā)器。
上面介紹了有關(guān)觸發(fā)器的概念、作用和一些基本問題,下面我們將分離介紹在MSSQLServer中如何用SQLServer管理工具EnterpriseManager和Transaction_SQL來創(chuàng)建觸發(fā)器。
在創(chuàng)建觸發(fā)器以前必需考慮到以下幾個方面:
?CREATETRIGGER語句必需是批處理的第一個語句;
?表的全部者具有創(chuàng)建觸發(fā)器的缺省權(quán)限,表的全部者不能把該權(quán)限傳給其它用戶;
?觸發(fā)器是數(shù)據(jù)庫對象,所以其命名必需符合命名規(guī)章;
?盡管在觸發(fā)器的SQL語句中可以參照其它數(shù)據(jù)庫中的對象,但是,觸發(fā)器只能創(chuàng)建在當(dāng)前數(shù)據(jù)庫中;
?雖然觸發(fā)器可以參照視圖或暫時表,但不能在視圖或暫時表上創(chuàng)建觸發(fā)器,而只能在基表或在創(chuàng)建視圖的表上創(chuàng)建觸發(fā)器;
?一個觸發(fā)器只能對應(yīng)一個表,這是由觸發(fā)器的機制打算的;
?盡管TRUNCATETABLE語句猶如沒有WHERE從句的DELETE語句,但是因為TRUNCATETABLE語句
沒有被記入日志,所以該語句不能觸發(fā)DELETE型觸發(fā)器;
?WRITETEXT語句不能觸發(fā)INSERT或UPDATE型的觸發(fā)器。
當(dāng)創(chuàng)建一個觸發(fā)器時,必需指定觸發(fā)器的名字,在哪一個表上定義觸發(fā)器,激活觸發(fā)器的修改語句,如INSERT、DELETE、UPDATE。固然兩個或三個不同的修改語句也可以都觸發(fā)同一個觸發(fā)器,如INSERT和UPDATE語句都能激活同一個觸發(fā)器。
12.6.1用管理工具EnterpriseManger創(chuàng)建觸發(fā)器
其操作步驟如下:
1.啟動EnterpriseManger,登錄到指定的服務(wù)器上。
2.綻開數(shù)據(jù)庫,然后綻開要在其上創(chuàng)建觸發(fā)器的表所在的數(shù)據(jù)庫,然后單擊該表。
3.右擊鼠標(biāo),在彈出菜單中挑選ALLTasks,然后單擊ManageTriggers…。
4.在名字框中挑選new,在文本框中輸入觸發(fā)器文本,如圖12-5所示。
5.單擊CheckSyntax檢查語句是否
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度創(chuàng)意辦公空間租賃與辦公氛圍營造合同
- 2024年度電商平臺物流解決方案合同2篇
- 2024人力資源總監(jiān)職位合同范本2篇
- 2024年度餐廳總經(jīng)理職位競聘與管理服務(wù)合同3篇
- 2024年度頁巖磚市場分析與預(yù)測合同3篇
- 2024年度教育設(shè)施ppp項目合作協(xié)議范本3篇
- 2024年新能源技術(shù)轉(zhuǎn)讓與許可合同
- 2024年度中央單位環(huán)保設(shè)施建設(shè)和運營管理合同3篇
- 2024年二手運動器材出售協(xié)議3篇
- 2024年度維權(quán)合同:瓶裝水品牌維權(quán)與打假合作協(xié)議2篇
- 關(guān)于智障兒童教育學(xué)后感【三篇】
- 可編輯修改中國地圖模板
- 1:青巖古鎮(zhèn)發(fā)展及規(guī)劃
- 物理學(xué)發(fā)展簡史
- 化學(xué)反應(yīng)工程(第三版)第七章-流化床反應(yīng)器
- PPT模板中華餐飲美食烤魚宣傳PPT課件
- 含氮有機化合物-胺、酰胺、尿素、丙二酰脲、胍、磺胺、吡咯、吡啶和嘧啶的結(jié)構(gòu)及化學(xué)性質(zhì)熟悉
- 電動車項目合作計劃書范文模板
- 雙柱基礎(chǔ)暗梁的計算書
- JJF 1175-2021 試驗篩校準(zhǔn)規(guī)范_(高清-最新版)
- 迷路了怎么辦PPT課件
評論
0/150
提交評論