版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)庫原理與應(yīng)用快速入門6.1使用視圖6.2使用存儲過程6.3使用觸發(fā)器第6章
使用其他數(shù)據(jù)庫對象6.4使用MySQL系統(tǒng)函數(shù)6.2.1理解存儲過程的概念6.2.2創(chuàng)建和執(zhí)行存儲過程6.2.3查看存儲過程6.2使用存儲過程6.2.4刪除存儲過程6.2.1理解存儲過程的概念我們可以設(shè)想,將這些執(zhí)行頻率較高的操作事先用一段命令編寫好,保存在數(shù)據(jù)庫服務(wù)器端。這樣,每次執(zhí)行操作時,只需要輸入簡單的指令來執(zhí)行這段命令,從而簡化了操作,提高工作效率。這種方法就是使用存儲過程。6.2.1理解存儲過程的概念存儲過程和表、視圖一樣,也是一種數(shù)據(jù)庫對象。它是在服務(wù)器端保存和執(zhí)行的一組SQL語句的集合,主要用于提高數(shù)據(jù)庫中檢索數(shù)據(jù)的速度,以及向表中寫入或修改數(shù)據(jù)。用戶需要執(zhí)行存儲過程時,只需要給出存儲過程的名稱和必要的參數(shù)即可。6.2.1理解存儲過程的概念在數(shù)據(jù)庫中,使用存儲過程有以下優(yōu)點:1、存儲過程在服務(wù)器端運行,執(zhí)行速度快、效率高。2、存儲過程執(zhí)行一次后,其執(zhí)行規(guī)劃就駐留在高速緩沖存儲器中。當(dāng)需要再次執(zhí)行時,只要從高速緩沖存儲器中調(diào)用已編譯好的二進制代碼執(zhí)行即可,從而提高了系統(tǒng)性能。3、確保數(shù)據(jù)庫的安全。使用存儲過程可以完成所有的數(shù)據(jù)庫操作,并可以通過編程方式控制上述操作對數(shù)據(jù)庫信息訪問的權(quán)限。4、自動完成需要預(yù)先執(zhí)行的任務(wù)。存儲過程可以在系統(tǒng)啟動時自動執(zhí)行,而不必在系統(tǒng)啟動后再進行手工操作,從而大大方便了用戶的使用,自動完成一些需要預(yù)先執(zhí)行的任務(wù)。6.2.2創(chuàng)建和執(zhí)行存儲過程存儲過程由CREATEPROCEDURE語句創(chuàng)建,其語法如下:CREATEPROCEDUREproc_name([proc_parameter])Routine_body6.2.2創(chuàng)建和執(zhí)行存儲過程各部分的參數(shù)解釋如下:1、proc_name:用于指定要創(chuàng)建的存儲過程的名稱。2、proc_parameter:存儲過程的參數(shù)。在CREATEPROCEDURE語句中可以聲明一個或多個參數(shù)。參數(shù)的形式:[IN|OUT|INOUT]para_nametype其中,IN表示輸入?yún)?shù),用于接收程序執(zhí)行過程中的外部輸入值;OUT表示輸出參數(shù),用于將程序執(zhí)行的結(jié)果輸出;INOUT表示參數(shù)既可以接收輸入也可以用于輸出。如果聲明時不指定參數(shù)類型,默認為IN參數(shù)。para_name表示參數(shù)的名稱,type表示參數(shù)的數(shù)據(jù)類型,可以是MySQL中支持的任意數(shù)據(jù)類型。3、Routine_body:存儲過程主體代碼,可包含的任意數(shù)目和類型的SQL語句??梢杂肂EGIN...END來表示代碼的開始和結(jié)束。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-14】在student數(shù)據(jù)庫中創(chuàng)建名為“Stuproc1”的存儲過程,用來查詢班級為“計算機應(yīng)用”的學(xué)生的學(xué)號、姓名和性別。6.2.2創(chuàng)建和執(zhí)行存儲過程存儲過程創(chuàng)建完成后,可以使用CALL語句來執(zhí)行,稱為調(diào)用存儲過程。CALL語句的語法格式如下:
CALLproc_name([proc_parameter])6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-15】調(diào)用存儲過程“Stuproc1”,查看其執(zhí)行結(jié)果。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-16】創(chuàng)建存儲過程“Stuproc2”,根據(jù)用戶輸入的班級名,查詢該班學(xué)生的學(xué)號、姓名和性別。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-17】調(diào)用存儲過程“Stuproc2”,查詢“軟件技術(shù)”班的學(xué)生情況。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-18】創(chuàng)建存儲過程“Stuproc3”,根據(jù)用戶輸入的學(xué)號和課程名,返回該課程的成績。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-19】執(zhí)行存儲過程“Stuproc3”,查詢學(xué)號為“210101001”、課程名為“數(shù)學(xué)”的成績。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-20】創(chuàng)建存儲過程“Stuproc4”,根據(jù)用戶輸入的學(xué)號,返回該學(xué)生的選課門數(shù)。6.2.2創(chuàng)建和執(zhí)行存儲過程【例6-21】執(zhí)行存儲過程“Stuproc4”,查詢學(xué)號為“210101001”的學(xué)生的選課門數(shù)。6.2.3查看存儲過程如果要了解存儲過程的狀態(tài)信息,可以使用SHOWSTATUS語句或SHOWCREATE語句來查看,也可以通過系統(tǒng)數(shù)據(jù)庫information_schema來查詢。6.2.3查看存儲過程1、使用SHOWSTATUS語句查看存儲過程的狀態(tài)SHOWSTATUS語句的語法結(jié)構(gòu)如下:SHOWPROCEDURESTATUS[LIKE'pattern']其中,LIKE'pattern'可選,用于匹配存儲過程的名稱。6.2.3查看存儲過程【例6-22】使用SHOWSTATUS語句查看存儲過程“Stuproc1”的狀態(tài)。6.2.3查看存儲過程2、使用SHOWCREATE語句查看存儲過程的狀態(tài)SHOWCREATE語句的語法格式如下:
SHOWCREATEPROCEDUREproc_name其中,proc_name表示要查看的存儲過程的名稱。6.2.3查看存儲過程【例6-23】使用SHOWCREATE語句查看存儲過程“Stuproc1”的狀態(tài)。6.2.3查看存儲過程3、通過系統(tǒng)數(shù)據(jù)庫information_schema查看存儲過程的狀態(tài)MySQL將存儲過程的信息存儲在系統(tǒng)數(shù)據(jù)庫information_schema中的Routines表里??梢酝ㄟ^查詢該表來查看存儲過程的信息,語法格式如下:SELECT*FROMinformation_schema.RoutinesWHEREROUTINE_NAME='proc_name';其中,ROUTINE_NAME列中存儲的是存儲過程的名稱,proc_name表示要查詢的存儲過程名稱。6.2.3查看存儲過程【例6-24】從系統(tǒng)數(shù)據(jù)庫information_schema中的Routines表里查看存儲過程“Stuproc1”的狀態(tài)。6.2.4刪除存儲過程如果存儲過程已經(jīng)不常用或不能滿足業(yè)務(wù)的需要,我們就可以刪除它。刪除存儲過程使用DROP命令,DROP命令可以將一個或者多個存儲過程從當(dāng)前數(shù)據(jù)庫中刪除,其語法形式如下:
DR
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年《稅務(wù)稽查指南》知識考試題庫及答案解析
- 廣西壯族自治區(qū)特種設(shè)備檢驗研究院2025年下半年公開招聘工作人員備考題庫及完整答案詳解1套
- 玉環(huán)市國有企業(yè)招聘筆試真題2024
- 重慶永川區(qū)事業(yè)單位定向招聘考試真題2024
- 2025年白朗輔警招聘真題及答案
- “夢工場”招商銀行大連分行2026寒假實習(xí)生招聘備考核心題庫及答案解析
- 2026年石獅市第六實驗小學(xué)招聘編外合同教師筆試重點試題及答案解析
- 2025云南昆明市五華區(qū)人民法院招聘第五批合同制司法輔助人員7人考試核心題庫及答案解析
- 2025廣西北海市社會保險經(jīng)辦中心招募就業(yè)見習(xí)生考試核心題庫及答案解析
- 2025 九年級語文下冊詩歌煉字煉句賞析課件
- 棉花合伙種植合同協(xié)議書
- 通信基站施工進度施工工期保證措施
- 鉆孔樁安全技術(shù)
- 2025年《社區(qū)警務(wù)工作規(guī)范(試行)》復(fù)習(xí)測試卷附答案
- 2025秋初中數(shù)學(xué)九年級上冊(滬科版 安徽專用)上課課件 21.4 第3課時 用二次函數(shù)解決拋物線形運動問題
- 2021年12月大學(xué)英語四級考試真題及答案(第1套)
- JG/T 387-2012環(huán)氧涂層預(yù)應(yīng)力鋼絞線
- 注塑模具備用件管理制度
- 2024年南昌大學(xué)第二附屬醫(yī)院招聘筆試真題
- 工業(yè)機械之光
- 清華大學(xué)《工程倫理》網(wǎng)課習(xí)題及期末考試答案
評論
0/150
提交評論