




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt整理ppt 客戶/服務(wù)器數(shù)據(jù)庫與傳統(tǒng)的數(shù)據(jù)庫結(jié)構(gòu)的一個(gè)很重要的區(qū)別是,在傳統(tǒng)的數(shù)據(jù)庫中只存放數(shù)據(jù),所有的應(yīng)用程序都在用戶
2、端,都與用戶實(shí)際運(yùn)行的應(yīng)用程序捆綁在一起;而在客戶/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫中,在數(shù)據(jù)庫中還可以存放程序,即存儲過程。整理ppt 存儲過程是事先編好的、存儲在數(shù)據(jù)庫中的程序,這些程序用來完成對數(shù)據(jù)庫的指定操作。整理ppt系統(tǒng)存儲過程 SQL Server本身提供了一些存儲過程,用于管理SQL Server和顯示有關(guān)數(shù)據(jù)庫和用戶的信息,我們稱之為系統(tǒng)存儲過程。用戶存儲過程 用戶也可以編寫自己的存儲過程,并把它存放在數(shù)據(jù)庫中。這樣安排的主要目的就是要充分發(fā)揮數(shù)據(jù)庫服務(wù)器的功能,盡量減少網(wǎng)絡(luò)上的堵塞。整理ppt客戶端應(yīng)用(不使用存儲過程)客戶端應(yīng)用(使用存儲過程).Start transaction.IN
3、SERT dataUPDATE dataDELETE dataEnd transaction.Start transaction.Call Stored procedureEnd transaction.DBMSServerDBMSServerProcedure:INSERT dataUPDATE dataDELETE data(a)(b) 不使用存儲不使用存儲過程時(shí),所有過程時(shí),所有的數(shù)據(jù)處理都的數(shù)據(jù)處理都在客戶端完成;在客戶端完成;而使用存儲過而使用存儲過程時(shí),可以使程時(shí),可以使數(shù)據(jù)處理在服數(shù)據(jù)處理在服務(wù)器端完成。務(wù)器端完成。整理pptCREATE PROCedure procedure_
4、name ; number parameter data_type = default , AS sql_statement s s procedure_name:給出存儲過程名;:給出存儲過程名;s s number:對同名的存儲過程指定一個(gè)序號;:對同名的存儲過程指定一個(gè)序號;s s parameter:給出參數(shù)名;:給出參數(shù)名;s s data_type:指出參數(shù)的數(shù)據(jù)類型;:指出參數(shù)的數(shù)據(jù)類型;s s = default:給出參數(shù)的默認(rèn)值;:給出參數(shù)的默認(rèn)值;s s sql_statement:存儲過程所要執(zhí)行的:存儲過程所要執(zhí)行的SQL語句,它可以是一語句,它可以是一組組SQL語句,
5、可以包含流程控制語句等。語句,可以包含流程控制語句等。整理pptCREATE PROCedure sp_getemp;1AS SELECT * FROM 職工職工整理pptCREATE PROCedure sp_getemp;2(salary int)AS SELECT * FROM 職工職工 WHERE 工資工資 salary整理ppt 存儲過程一般用來完成數(shù)據(jù)查詢和數(shù)據(jù)處理操作,存儲過程一般用來完成數(shù)據(jù)查詢和數(shù)據(jù)處理操作,所以在存儲過程中不可以使用創(chuàng)建數(shù)據(jù)庫對象的語句,所以在存儲過程中不可以使用創(chuàng)建數(shù)據(jù)庫對象的語句,即在存儲過程中一般不能含有以下語句:即在存儲過程中一般不能含有以下語句:C
6、REATE TABLECREATE VIEWCREATE DEFAULTCREATE RULECREATE TRIGGERCREATE PROCEDURE整理pptEXECute=|整理pptexecute sp_getemp;2 1240 整理ppt 無論什么時(shí)候執(zhí)行存儲過程,總要返回?zé)o論什么時(shí)候執(zhí)行存儲過程,總要返回一個(gè)結(jié)果碼,用以指示存儲過程的執(zhí)行狀態(tài)。一個(gè)結(jié)果碼,用以指示存儲過程的執(zhí)行狀態(tài)。如果存儲過程執(zhí)行成功,返回的結(jié)果碼是如果存儲過程執(zhí)行成功,返回的結(jié)果碼是0;如果存儲過程執(zhí)行失敗,返回的結(jié)果碼一般如果存儲過程執(zhí)行失敗,返回的結(jié)果碼一般是一個(gè)負(fù)數(shù),它和失敗的類型有關(guān)。我們在是一個(gè)負(fù)
7、數(shù),它和失敗的類型有關(guān)。我們在創(chuàng)建存儲過程時(shí),也可以定義自己的狀態(tài)碼創(chuàng)建存儲過程時(shí),也可以定義自己的狀態(tài)碼和錯(cuò)誤信息。和錯(cuò)誤信息。整理pptCREATE PROCedure sp_getemp;3(salary int =NULL)AS IF salary IS NULLBEGIN PRINT 必須提供一個(gè)數(shù)值作參數(shù)!必須提供一個(gè)數(shù)值作參數(shù)! RETURN 13ENDIF NOT EXISTS (SELECT * FROM 職工職工 WHERE 工資工資 salary)BEGIN PRINT 沒有滿足條件的記錄!沒有滿足條件的記錄! RETURN -103ENDSELECT * FROM 職工
8、職工 WHERE 工資工資 salaryRETURN 0例:帶參數(shù)和返回狀態(tài)值的存儲過程。例:帶參數(shù)和返回狀態(tài)值的存儲過程。整理ppt例:執(zhí)行以上存儲過程。例:執(zhí)行以上存儲過程。DECLARE status intEXECUTE status=sp_getemp;3 1200print status整理ppt整理ppt 存儲過程是客戶/服務(wù)器機(jī)制的一個(gè)重要組成部分,如果使用客戶/服務(wù)器機(jī)制的數(shù)據(jù)庫管理系統(tǒng),但是不理解存儲過程或沒有充分利用存儲過程,那將使客戶/服務(wù)器機(jī)制的功能大打折扣,使系統(tǒng)的整體性能可能降低很多。整理ppt 觸發(fā)器可以看作是一類特殊的存儲過程,觸發(fā)器可以看作是一類特殊的存儲過
9、程,它在滿足某個(gè)特定條件時(shí)自動觸發(fā)執(zhí)行。它在滿足某個(gè)特定條件時(shí)自動觸發(fā)執(zhí)行。 觸發(fā)器是為表上的更新、插入、刪除操觸發(fā)器是為表上的更新、插入、刪除操作定義的,也就是說當(dāng)表上發(fā)生更新、插入作定義的,也就是說當(dāng)表上發(fā)生更新、插入或刪除操作時(shí)觸發(fā)器將執(zhí)行?;騽h除操作時(shí)觸發(fā)器將執(zhí)行。整理ppt 1. 觸發(fā)器可以通過級聯(lián)的方式對相關(guān)的表觸發(fā)器可以通過級聯(lián)的方式對相關(guān)的表進(jìn)行修改。比如,對父表的修改,可以引起對進(jìn)行修改。比如,對父表的修改,可以引起對子孫表的一系列修改,從而保證數(shù)據(jù)的一致性子孫表的一系列修改,從而保證數(shù)據(jù)的一致性和完整性。和完整性。 2. 觸發(fā)器可以禁止或撤消違反參照完整性觸發(fā)器可以禁止或撤
10、消違反參照完整性的修改。的修改。 3. 觸發(fā)器可以強(qiáng)制比用觸發(fā)器可以強(qiáng)制比用CHECK約束定義約束定義更加復(fù)雜的限制。更加復(fù)雜的限制。整理ppt整理pptCREATE TRIGGER trigger_nameON tableFOR INSERT | UPDATE | DELETE AS IF UPDATE(column) AND | OR UPDATE(column)sql_statements s trigger_name:給出了觸發(fā)器的名稱;:給出了觸發(fā)器的名稱;s s table:說明了定義觸發(fā)器的表或視圖;:說明了定義觸發(fā)器的表或視圖;s s FOR INSERT | UPDATE |
11、 DELETE :說明了激活觸發(fā)器的數(shù)據(jù)操作語句;:說明了激活觸發(fā)器的數(shù)據(jù)操作語句;s s IF UPDATE(column):對應(yīng)于:對應(yīng)于UPDATE類觸發(fā)器,說明如果更新某(些)列類觸發(fā)器,說明如果更新某(些)列則做如何處理;則做如何處理;s s sql_statement:觸發(fā)器所要執(zhí)行的:觸發(fā)器所要執(zhí)行的SQL語句,它可以是一組語句,它可以是一組SQL語句,可以包語句,可以包含流程控制語句等。含流程控制語句等。整理pptCREATE TRIGGER wh_triggerON 倉庫倉庫FOR INSERT AS PRINT 插入了一個(gè)倉庫元組插入了一個(gè)倉庫元組整理ppt為觸發(fā)器運(yùn)行而自
12、動派生的兩個(gè)視圖:為觸發(fā)器運(yùn)行而自動派生的兩個(gè)視圖:inserted存放剛插入的新記錄存放剛插入的新記錄deleted存放剛刪除的舊記錄存放剛刪除的舊記錄整理ppt 刪除類觸發(fā)器就是當(dāng)表上發(fā)生刪除操作時(shí)刪除類觸發(fā)器就是當(dāng)表上發(fā)生刪除操作時(shí)所觸發(fā)執(zhí)行的程序。所觸發(fā)執(zhí)行的程序。整理pptCREATE TRIGGER w_del_triggerON 倉庫倉庫 FOR DELETEASUPDATE 職工職工SET 倉庫號倉庫號=NULLWHERE 倉庫號倉庫號 = (SELECT 倉庫號倉庫號 FROM deleted)整理ppt 插入類觸發(fā)器就是當(dāng)表上發(fā)生插入插入類觸發(fā)器就是當(dāng)表上發(fā)生插入操作時(shí)所觸
13、發(fā)執(zhí)行的程序。操作時(shí)所觸發(fā)執(zhí)行的程序。整理pptCREATE TRIGGER e_ins_triggerON 職工 FOR INSERTASIF (SELECT COUNT(*) FROM 倉庫 w , inserted i WHERE w.倉庫號 = i.倉庫號) = 0BEGIN RAISERROR (非法倉庫號!,1,1) ROLLBACK TRANSACTIONEND整理ppt 更新類觸發(fā)器就是當(dāng)表上發(fā)生更新操作時(shí)更新類觸發(fā)器就是當(dāng)表上發(fā)生更新操作時(shí)所觸發(fā)執(zhí)行的程序。所觸發(fā)執(zhí)行的程序。整理ppt整理pptCREATE TRIGGER e_upd_triggerON 職工職工 FOR UPDATEASDECLARE wh_no CHAR(4)IF UPDATE(倉庫號倉庫號) BEGIN IF (SELECT COUNT(*) FROM 倉庫倉庫 w , inserted i WHERE w.倉庫號倉庫號 = i.倉庫號倉庫號) = 0 BEGIN RAISERROR (非法倉庫號!非法倉庫號!, 16, 1) ROLLBACK TRANSACTION END ELSE BEGIN SELECT wh_no = 倉庫號倉庫號 FROM inserted IF wh_no = WH2 UPDATE 職工職工 SET 工資工資 = 工資工資*1.10 WHERE 職工號職
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 飲料合同合作協(xié)議書范本
- 重慶兒童攀巖管理辦法
- 深圳市建筑用工管理辦法
- 法人按揭貸款管理辦法
- 重慶凍庫管理辦法細(xì)則
- 銀行安全保衛(wèi)管理辦法
- 南昌化妝品運(yùn)輸管理辦法
- 水電站森林防火管理辦法
- 煤礦綜采安全管理辦法
- 工商市場登記管理辦法
- 《思想道德與法治》學(xué)習(xí)通課后章節(jié)答案期末考試題庫2025年
- 清廉講堂活動方案
- 家居落地活動方案
- 2025年醫(yī)保知識考試題庫及答案:醫(yī)保信息化建設(shè)應(yīng)用法律法規(guī)試題
- 環(huán)境現(xiàn)場采樣培訓(xùn)
- 2025年 汕頭市公安局警務(wù)輔助人員招聘考試筆試試卷附答案
- 車輛傷害事故桌面功能演練方案、腳本
- XX公司年產(chǎn)10萬噸陽極銅及5萬噸銅桿項(xiàng)目環(huán)境影響報(bào)告書
- 陜西省專業(yè)技術(shù)人員繼續(xù)教育2025公需課《黨的二十屆三中全會精神解讀與高質(zhì)量發(fā)展》20學(xué)時(shí)題庫及答案
- 財(cái)務(wù)考試試題及答案大全
- 2024-2025學(xué)年人教版數(shù)學(xué)五年級下學(xué)期期末試卷(含答案)
評論
0/150
提交評論