MySQL數(shù)據(jù)庫應(yīng)用 課件 項目6、7 視圖與索引、存儲過程與存儲函數(shù)_第1頁
MySQL數(shù)據(jù)庫應(yīng)用 課件 項目6、7 視圖與索引、存儲過程與存儲函數(shù)_第2頁
MySQL數(shù)據(jù)庫應(yīng)用 課件 項目6、7 視圖與索引、存儲過程與存儲函數(shù)_第3頁
MySQL數(shù)據(jù)庫應(yīng)用 課件 項目6、7 視圖與索引、存儲過程與存儲函數(shù)_第4頁
MySQL數(shù)據(jù)庫應(yīng)用 課件 項目6、7 視圖與索引、存儲過程與存儲函數(shù)_第5頁
已閱讀5頁,還剩87頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

項目六視圖與索引225226任務(wù)1創(chuàng)建視圖任務(wù)2修改和刪除已創(chuàng)建的視圖任務(wù)3創(chuàng)建和刪除索引創(chuàng)建視圖任務(wù)12271.?了解視圖的概念。2.?了解視圖的作用。3.?掌握視圖的創(chuàng)建方法。4.?能使用SQL語句創(chuàng)建視圖。228229視圖封裝了SELECT查詢的定義,與表不同,它在物理上不是真實存在的,而是一張?zhí)摂M表。數(shù)據(jù)庫視圖有助于限制特定用戶對數(shù)據(jù)的訪問,為數(shù)據(jù)提供了額外的安全層,也有助于簡化復(fù)雜的查詢。本任務(wù)要求使用Navicat創(chuàng)建一個名為“s_count”的視圖,如圖所示,該視圖可統(tǒng)計“數(shù)媒111班”的人數(shù)。230創(chuàng)建視圖231一、視圖的概念MySQL中的視圖是一張?zhí)摂M表,該表與真實的表類似,包含一系列帶有名稱的列(字段),但不存儲實際數(shù)據(jù)。視圖的行數(shù)據(jù)來自定義視圖時所引用的數(shù)據(jù)表,并且在查詢視圖時動態(tài)生成。視圖的操作與表非常相似,用戶可以使用SELECT語句查詢視圖中的數(shù)據(jù)。在滿足一定條件時,也可使用INSERT、UPDATE和DELETE語句操作視圖數(shù)據(jù)。從MySQL5.0.1版本開始,MySQL支持視圖功能,視圖不僅可以使用戶操作更加方便,還可以保障數(shù)據(jù)庫系統(tǒng)的安全。二、視圖的作用1.?簡化操作視圖可以使查詢語句更加直觀和易于理解,將常用查詢邏輯封裝為視圖,可以簡化復(fù)雜的查詢操作。2.?提高數(shù)據(jù)安全性通過視圖可以限制用戶對底層表的訪問權(quán)限,選擇性地展示數(shù)據(jù),使不同用戶只能看到被授權(quán)的信息。3.?實現(xiàn)邏輯數(shù)據(jù)獨立視圖可屏蔽真實表結(jié)構(gòu)變化帶來的影響,保證數(shù)據(jù)與程序之間的邏輯獨立性(即邏輯數(shù)據(jù)獨立性)。232三、視圖的創(chuàng)建創(chuàng)建視圖時,從基本表中提取數(shù)據(jù)的邏輯封裝。視圖本身并不存儲實際數(shù)據(jù),而是保存一個SELECT查詢語句,每次查詢視圖時動態(tài)執(zhí)行該語句生成結(jié)果。創(chuàng)建視圖使用CREATEVIEW語句,其基本的SQL語法格式如下。233修改和刪除已創(chuàng)建的視圖任務(wù)22341.?了解更新視圖數(shù)據(jù)的方法。2.?了解查看視圖的方法。3.?能修改視圖結(jié)構(gòu)。4.?能刪除視圖。235236修改視圖是指修改數(shù)據(jù)庫中存在的視圖,當(dāng)基本表的某些字段發(fā)生變化時,可以通過修改視圖來保持視圖與基本表的一致性。刪除視圖時,只能刪除視圖的定義,不會刪除數(shù)據(jù)。本任務(wù)要求通過Navicat在教學(xué)管理系統(tǒng)數(shù)據(jù)庫“schoolsys”中使用CREATEORRE-PLACEVIEW語句修改視圖,如圖所示,并用DROP語句刪除視圖。修改視圖成功237一、視圖數(shù)據(jù)的更新1.?在已創(chuàng)建的視圖中插入數(shù)據(jù)對視圖數(shù)據(jù)的更新本質(zhì)上是對其基本表數(shù)據(jù)的更新,包括插入、修改和刪除視圖數(shù)據(jù)。在視圖中插入數(shù)據(jù)與在表中插入數(shù)據(jù)一樣,使用基本的INSERT語句插入數(shù)據(jù),其基本的SQL語法格式如下。2.?在已創(chuàng)建的視圖中修改數(shù)據(jù)修改視圖中的數(shù)據(jù)可使用UPDATE語句,可同時修改多行數(shù)據(jù),其基本的SQL語法格式如下。2383.?在已創(chuàng)建的視圖中刪除數(shù)據(jù)刪除視圖中數(shù)據(jù)的基本語法與刪除表中的數(shù)據(jù)語法一致,都可使用DELETE語句,其中DELETE語句中使用允許WHERE子句指定刪除條件,具體的SQL語法格式如下。239二、視圖的查看1.?使用DESCRIBE?語句查看視圖的基本信息使用DESCRIBE語句可以查看視圖字段的定義、字段的數(shù)據(jù)類型、是否為空等信息,具體的SQL語法格式如下。2.?使用?SHOW?TABLE?STATUS?語句查看視圖的基本信息使用SHOWTABLESTATUS語句可以查看視圖的基本信息,具體的SQL語法格式如下。2403.?使用?SHOW?CREATE?VIEW?語句查看視圖的基本信息使用SHOWCREATEVIEW語句可以查看視圖的名稱、創(chuàng)建視圖的語句等信息,具體的SQL語法格式如下。4.?使用SELECT語句查看所有視圖的詳細(xì)信息在MySQL中,數(shù)據(jù)庫“information_schema”下的數(shù)據(jù)表“views”中存儲了所有視圖的定義。通過

對數(shù)據(jù)表“views”的查詢,可以查看數(shù)據(jù)庫中所有視圖的詳細(xì)信息,具體的SQL語法格式如下。241三、視圖結(jié)構(gòu)的修改1.?使用?CREATE?OR?REPLACE?VIEW?語句修改視圖通常意味著更改視圖的定義,可以使用CREATEORREPLACEVIEW語句或ALTERVIEW語句實現(xiàn)。使用CREATEORREPLACEVIEW語句可以修改視圖結(jié)構(gòu),具體的SQL語法格式如下。2422.?使用?ALTER?VIEW語句使用ALTERVIEW語句可以對視圖的結(jié)構(gòu)進(jìn)行修改,該語句必須在視圖已存在時使用(否則報錯),具體的SQL語法格式如下。243四、視圖的刪除刪除視圖是指刪除數(shù)據(jù)庫中已存在的視圖。刪除一個或多個視圖可使用DROPVIEW語句,具體的SQL語法格式如下。244

創(chuàng)建和刪除索引任務(wù)32451.?了解索引的概念。2.?掌握創(chuàng)建、查看和刪除索引的方法。3.?能創(chuàng)建和刪除索引。246數(shù)據(jù)庫索引是為了加快查詢速度而附加于數(shù)據(jù)表字段的一種標(biāo)識,相當(dāng)于一本書的目錄,有助于MySQL高效獲取數(shù)據(jù)。本任務(wù)要求使用Navicat,使用CREATETABLE語句創(chuàng)建表,并在創(chuàng)建表時對字段“s_id”創(chuàng)建唯一索引,如圖所示。247創(chuàng)建唯一索引一、索引的概念索引是一個獨立存儲在磁盤上的數(shù)據(jù)結(jié)構(gòu),基于表中特定字段建立索引鍵與數(shù)據(jù)行的映射關(guān)系,用于快速定位數(shù)據(jù)。所有MySQL中的數(shù)據(jù)類型都可以被索引,為相關(guān)字段設(shè)置索引是提高查詢操作速度的最佳途徑。如果不使用索引,MySQL需逐行掃描全表,表越大查詢效率越低。如果為表中需要查詢的字段設(shè)置索引,MySQL能快速定位到目標(biāo)數(shù)據(jù)所在位置,避免全表掃描。248二、索引的類型1.按特性分類(1)普通索引普通索引是最基本的索引類型,無唯一性約束,允許有重復(fù)值,可以應(yīng)用于大多數(shù)數(shù)據(jù)類型的列上,并且可以加快SELECT查詢的速度。249(2)唯一索引唯一索引能確保索引列值唯一,不允許出現(xiàn)重復(fù)值,常用于保證數(shù)據(jù)完整性。(3)全文索引全文索引專為文本搜索設(shè)計,主要用于處理大文本字段中的關(guān)鍵詞搜索,支持復(fù)雜的自然語言查詢和布爾模式匹配。(4)空間索引空間索引用于地理信息系統(tǒng)應(yīng)用,針對空間數(shù)據(jù)類型,能高效地執(zhí)行空間查詢。2502.按覆蓋列數(shù)分類(1)單列索引單列索引是在單個列上創(chuàng)建的索引,適用于基于單一字段的查詢。(2)組合索引組合索引是在多個列上創(chuàng)建的索引,當(dāng)查詢條件同時包含這些列時,組合索引可以顯著提高查詢效率。251三、索引的創(chuàng)建1.?在創(chuàng)建表的同時創(chuàng)建索引(1)創(chuàng)建普通索引普通索引是最基本的索引類型,沒有唯一性等的限制,其作用是加快對數(shù)據(jù)的訪問速度。創(chuàng)建普通索引的SQL語法格式如下。252(2)創(chuàng)建唯一索引創(chuàng)建唯一索引的主要原因是減少查詢索引列操作的執(zhí)行時間,尤其是在面對比較龐大的數(shù)據(jù)表時。創(chuàng)建唯一索引的具體SQL語法格式如下。253(3)創(chuàng)建單列索引單列索引是在數(shù)據(jù)表中的某個字段上創(chuàng)建的索引,一張表中可以創(chuàng)建多個單列索引。創(chuàng)建單列索引的具體SQL語法格式如下。254(4)創(chuàng)建組合索引組合索引是在多個字段創(chuàng)建的索引。創(chuàng)建組合索引的具體SQL語法格式如下。255(5)創(chuàng)建全文索引使用關(guān)鍵字FULLTEXT創(chuàng)建的全文索引可以用于全文搜索。創(chuàng)建全文索引的具體SQL語法格式如下。256(6)創(chuàng)建空間索引空間索引支持MyISAM和InnoDB引擎(需MySQL5.7及以上),針對空間數(shù)據(jù)類型的字段,且該字段值必須為非空。創(chuàng)建空間索引的具體SQL語法格式如下。2572.?在已存在的表上創(chuàng)建索引(1)使用ALTERTABLE使用ALTERTABLE語句可以為已存在的表創(chuàng)建索引,與創(chuàng)建表時創(chuàng)建索引的語法不同的是,在這里使用了ALTERTABLE語句和ADD關(guān)鍵字,其中ALTERTABLE語句的作用是聲明修改的數(shù)據(jù)表,ADD關(guān)鍵字表示向表中添加索引,具體的SQL語法格式如下。258(2)使用CREATEINDEXCREATEINDEX語句也可以為已存在的表添加索引。在MySQL中,CREATEINDEX被映射到一個ALTERTABLE語句上,具體的SQL語法格式如下。259四、索引的查看使用SHOWINDEX語句查看指定表中創(chuàng)建的索引,具體的SQL語法格式如下。260五、索引的刪除1.?使用ALTER?TABLE語句刪除索引使用ALTERTABLE語句可刪除任意表中的索引,具體的SQL語法格式如下。2.?使用?DROP?INDEX?語句刪除索引DROPINDEX語句在內(nèi)部被映射到一個ALTERTABLE語句中,具體的SQL語法格式如下。261項目七存儲過程與存儲函數(shù)262263任務(wù)1創(chuàng)建和調(diào)用存儲過程任務(wù)2創(chuàng)建存儲函數(shù)任務(wù)3使用變量及流程控制語句任務(wù)4修改和刪除存儲過程與存儲函數(shù)創(chuàng)建和調(diào)用存儲過程任務(wù)12641.?了解存儲過程的概念。2.?能創(chuàng)建存儲過程。3.?能調(diào)用存儲過程。4.?能使用游標(biāo)。265266存儲過程是一組預(yù)定義的SQL語句與控制邏輯的集合,作為數(shù)據(jù)庫服務(wù)器端程序運行,功能遠(yuǎn)超簡單的批處理。對數(shù)據(jù)庫進(jìn)行復(fù)雜操作時,可將這些復(fù)雜操作用存儲過程封裝起來,與數(shù)據(jù)庫提供的事務(wù)處理結(jié)合在一起使用。本任務(wù)要求通過Navicat,在教學(xué)管理系統(tǒng)數(shù)據(jù)庫“schoolsys”中使用SQL語句,創(chuàng)建一個名為“everyone_grade”的存儲過程,如圖所示。該存儲過程能實現(xiàn)查找所有學(xué)生的成績,并通過調(diào)用語句執(zhí)行該存儲過程。267創(chuàng)建存儲過程268一、存儲過程的概念在大型數(shù)據(jù)庫系統(tǒng)中,存儲過程是一組為了完成特定功能的SQL語句集,并以特定的名字存儲在數(shù)據(jù)庫中。存儲過程經(jīng)過第一次編譯后調(diào)用時不需要再次編譯,用戶可通過指定存儲過程的名稱和參數(shù)來執(zhí)行它。存儲過程是數(shù)據(jù)庫中的一個重要對象,任何一個設(shè)計良好的數(shù)據(jù)庫應(yīng)用程序都會用到存儲過程。二、存儲過程的創(chuàng)建使用存儲過程將簡化操作,減少多余的操作步驟,同時,還可以減少操作過程中的失誤,提高效率。在MySQL中,使用CREATE?PROCEDURE語句創(chuàng)建存儲過程,需配合DELIMITER修改語句結(jié)束符(避免分號沖突),基本的SQL語法格式如下。269三、存儲過程的調(diào)用在MySQL中,可使用CALL語句調(diào)用已創(chuàng)建的存儲過程,其基本SQL語法格式如下。調(diào)用存儲過程時,若已創(chuàng)建的存儲過程中沒有設(shè)置參數(shù),調(diào)用存儲過程同樣不需要參數(shù)。270四、游標(biāo)的使用在MySQL中,查詢語句常返回多行數(shù)據(jù),在存儲過程或函數(shù)中,可以使用游標(biāo)來逐個讀取查詢結(jié)果集中的記錄。通過控制游標(biāo)的移動,用戶可以逐行查看和操作這些數(shù)據(jù),但不能跳過任何記錄。1.?聲明游標(biāo)在MySQL中,使用DECLARE語句來聲明游標(biāo),具體的SQL語法格式如下。2712.?打開游標(biāo)可使用關(guān)鍵字OPEN打開已聲明的游標(biāo),該語句會將游標(biāo)與相應(yīng)的查詢結(jié)果集關(guān)聯(lián)起來,以便對查詢結(jié)果集中的每條記錄進(jìn)行處理。如果游標(biāo)未被聲明,則OPEN語句會報錯。具體的SQL語法格式如下。3.?使用游標(biāo)使用游標(biāo)的具體SQL語法格式如下。2724.?關(guān)閉游標(biāo)使用CLOSE語句可關(guān)閉已使用的游標(biāo),具體的SQL語法格式如下。如果游標(biāo)未打開,則使用該語句會報錯。需要注意的是,如果游標(biāo)未被明確地關(guān)閉,程序執(zhí)行到END語句時會自動關(guān)閉游標(biāo),釋放占用的資源和內(nèi)存。273創(chuàng)建存儲函數(shù)任務(wù)22741.?了解存儲函數(shù)的概念。2.?能創(chuàng)建存儲函數(shù)。3.?能調(diào)用存儲函數(shù)。275276存儲函數(shù)是MySQL提供的一種機制,它可以用來存儲并重用在SQL查詢中使用的常用邏輯或計算。通過存儲函數(shù),能在內(nèi)置函數(shù)的基礎(chǔ)上,以更簡潔的方式實現(xiàn)個性化的數(shù)據(jù)處理。本任務(wù)要求通過Navicat,在教學(xué)管理系統(tǒng)數(shù)據(jù)庫“schoolsys”中使用SQL語句,創(chuàng)建一個名為“s_find”的存儲函數(shù),如圖所示。通過該存儲函數(shù),可以在輸入學(xué)生的學(xué)號后,在表“tb_student”中查詢學(xué)生的姓名,若學(xué)生存在,則返回該學(xué)生的姓名;若學(xué)生不存在,則返回“查無此人”。277創(chuàng)建存儲函數(shù)278一、存儲函數(shù)的概念在MySQL中,存儲函數(shù)是用戶自定義的SQL代碼塊,用于擴展內(nèi)置函數(shù)的功能。類似于存儲過程,存儲函數(shù)封裝了一系列SQL語句,以執(zhí)行特定的數(shù)據(jù)庫操作或計算,兩者的區(qū)別在于:存儲函數(shù)必須使用RETURN子句返回單一值,而存儲過程無須強制返回值,需使用CALL語句單獨調(diào)用,不能在表達(dá)式中直接使用。二、存儲函數(shù)的創(chuàng)建存儲函數(shù)是用戶自定義的函數(shù),先定義后調(diào)用。在MySQL中,使用CREATE?FUNCTION語句創(chuàng)建,其基本的SQL語法格式如下。279三、存儲函數(shù)的調(diào)用在MySQL中,存儲函數(shù)的使用方法與MySQL內(nèi)置函數(shù)的使用方法是一樣的,都需使用SELECT語句調(diào)用已創(chuàng)建的存儲函數(shù),其基本的SQL語法格式如下。280使用變量及流程控制語句任務(wù)32811.?掌握變量的使用方法。2.?了解流程控制語句的分類。3.?掌握流程控制語句的使用方法。4.?能使用流程控制語句對數(shù)據(jù)表進(jìn)行復(fù)雜的查詢操作。282在MySQL中,變量用于存儲中間結(jié)果或臨時數(shù)據(jù),流程控制語句用于實現(xiàn)復(fù)雜邏輯。通過變量和流程控制語句,可增強存儲過程的靈活性。283本任務(wù)要求通過Navicat,在教學(xué)管理系統(tǒng)數(shù)據(jù)庫“schoolsys”

中使用CREATE?PRO-CEDURE語句創(chuàng)建一個名為“s_n”的存儲過程,使用關(guān)鍵字IN聲明輸入?yún)?shù)“n”(數(shù)據(jù)類型INT),使用關(guān)鍵字DECLARE聲明變量“sum”和“num”,并使用關(guān)鍵字SET為變量賦值,使存儲過程“s_n”能計算1至任意數(shù)的累加和,如圖所示。284創(chuàng)建存儲過程,求1至任意數(shù)的累加和一、變量的使用在MySQL中,除了支持標(biāo)準(zhǔn)的存儲過程和存儲函數(shù)外,還引入了表達(dá)式。MySQL中的表達(dá)式與其他高級語言的表達(dá)式一樣,由操作數(shù)和運算符構(gòu)成。變量是操作數(shù)的重要表示方式,可以用來臨時存儲數(shù)據(jù)。在存儲過程和函數(shù)中都可以定義及使用變量。變量主要分為系統(tǒng)變量、用戶變量和局部變量。2851.?系統(tǒng)變量系統(tǒng)變量由MySQL服務(wù)器維護(hù),用于控制服務(wù)器的行為和配置,系統(tǒng)變量分為全局變量和會話變量,通常由數(shù)據(jù)庫管理員設(shè)置,以優(yōu)化性能或調(diào)整服務(wù)器行為,其基本SQL語法格式如下。2862.?用戶變量用戶變量是由用戶自己定義和管理的變量,作用范圍僅限于當(dāng)前客戶端連接(即會話),用戶變量的名字以?@?開頭,允許在同一會話中的多個語句之間存儲和傳遞值,用戶變量不需要顯式聲明,可以直接賦值并使用,其基本SQL語法格式如下。2873.?局部變量局部變量是在存儲過程或函數(shù)內(nèi)部聲明的變量,作用范圍僅限于聲明的過程或函數(shù)體內(nèi),局部變量需要顯式聲明,并且可以用于保存臨時數(shù)據(jù)或控制流程邏輯,其基本SQL語法格式如下。288二、流程控制語句的概念流程控制語句用于控制存儲過程中SQL語句的執(zhí)行順序,是完成復(fù)雜操作必不可少的一部分。MySQL中的流程控制語句可以分為三類,其中IF、CASE語句為條件判斷語句,LOOP、REPEAT、WHILE語句為循環(huán)語句,LEAVE、ITERATE語句為跳轉(zhuǎn)語句。每個流程控制語句中可能包含一個單獨語句,也可以使用BEGIN...END語句組合的語句塊。2891.?IF語句IF語句用來進(jìn)行條件判斷,根據(jù)變量是否滿足條件(可包含多個條件)來執(zhí)行不同的語句,是流程控制語句中最常用的判斷語句。ELSEIF語句用于對多個條件判斷語句進(jìn)行判斷,產(chǎn)生不同分支,輸出不同結(jié)果。2902.?CASE語句CASE語句也用來進(jìn)行條件判斷,與IF語句不同的是,CASE語句提供了多個條件進(jìn)行選擇,可以實現(xiàn)比IF語句更復(fù)雜的條件判斷。3.?LOOP語句LOOP語句可以使某些特定的語句重復(fù)執(zhí)行,是不含條件判斷的簡單循環(huán)。LOOP語句內(nèi)的子句一直重復(fù)執(zhí)行,直到循環(huán)被LEAVE語句退出,則跳出循環(huán)。2914.?LEAVE語句LEAVE語句主要用于跳出循環(huán)控制,可以用在循環(huán)語句內(nèi),也可以用在以BEGIN...END語句包裹起來的程序體內(nèi),表示跳出循環(huán)或者跳出程序體的操作。5.?ITERATE語句ITERATE為“再次循環(huán)”的意思,只能用在循環(huán)語句(LOOP、REPEAT和WHILE)內(nèi),作用是跳過當(dāng)前循環(huán)的剩余語句,直接回到循環(huán)開始處重新執(zhí)行。2926.?REPEAT語句REPEAT語句是有條件控制的循環(huán)語句,每次語句執(zhí)行完畢,會對條件表達(dá)式進(jìn)行判斷,如果表達(dá)式返回值為TRUE,則循環(huán)結(jié)束,否則重復(fù)執(zhí)行循環(huán)中的語句。7.?WHILE語句WHILE語句也是有條件控制的循環(huán)語句。WHILE語句和REPEAT語句不同的是,WHILE語句是滿足條件時執(zhí)行循環(huán)內(nèi)的語句,否則退出循環(huán)。293三、流程控制語句的使用1.?IF語句IF語句可根據(jù)表達(dá)式的結(jié)果為TRUE或FALSE執(zhí)行相應(yīng)的語句,其具體的SQL語法格式如下。2942.?CASE語句CASE語句是條件判斷語句,可同時進(jìn)行多個條件的判斷。CASE語句有兩種格式:第一種為固定值條件判斷,其具體的SQL語法格式如下。295第二種為非固定值條件判斷,其具體的SQL語法格式如下。2963.?LOOP語句LOOP循環(huán)語句可用來重復(fù)執(zhí)行某些語句,與IF語句和CASE語句相比,LOOP語句只是創(chuàng)建一個循環(huán)操作的過程,并不進(jìn)行條件判斷。LOOP語句內(nèi)的子句會一直重復(fù)執(zhí)行直到循環(huán)被退出,所以LOOP語句需要通過與IF語句或CASE語句、LEAVE語句或ITERATE語句結(jié)合,構(gòu)成一個完整的循環(huán)。LEAVE語句用來退出任何被標(biāo)注的流程控制結(jié)構(gòu),常用于結(jié)束循環(huán)。ITERATE語句只能出現(xiàn)在LOOP語句、REPEAT語句和WHILE語句內(nèi)。LOOP語句的具體SQL語法格式如下。2972984.?WHILE語句WHILE語句用于創(chuàng)建一個帶條件判斷的循環(huán)過程,與REPEAT語句不同,WHILE語句在執(zhí)行循環(huán)語句前先對指定的條件表達(dá)式進(jìn)行判斷,如果結(jié)果為TRUE,就執(zhí)行循環(huán)內(nèi)的語句,否則退出循環(huán)。其具體的SQL語法格式如下。2995.?REPEAT語句REPEAT語句用于創(chuàng)建一個帶條件判斷的循環(huán)過程,每次循環(huán)語句執(zhí)行完畢會對條件表達(dá)式進(jìn)行判斷,如果結(jié)果為TRUE,則循環(huán)結(jié)束,否則重復(fù)執(zhí)行循環(huán)中的語句。其具體的SQL語法格式如下。3006.?LEAVE語句使用LEAVE語句,可以在循環(huán)過程中提前退出循環(huán),它可以用在循環(huán)語句內(nèi),也可以用在以?BEGIN...END?語句包裹起來的程序體內(nèi),表示跳出循環(huán)或者跳出程序體的操作。其具體的SQL語法格式如下。3017.?ITERATE語句使用ITERATE語句,可以在循環(huán)語句中提前跳出接下來的循環(huán)語句,進(jìn)行下次循環(huán),它可以用在循環(huán)語句內(nèi),也可以用在以?BEGIN...END?語句包裹起來的程序體內(nèi),跳過當(dāng)前循環(huán)的剩余語句,直接回到循環(huán)開始處重新執(zhí)行。其具體的SQL語法格式如下。302修改和刪除存儲過程與存儲函數(shù)任務(wù)43031.?了解修改存儲過程與存儲函數(shù)特性的方法。2.?掌握查看存儲過程與存儲函數(shù)的操作步驟。3.?能刪除存儲過程與存儲函數(shù)。304修改存儲過程與存儲函數(shù)主要是指修改它們的特性,例如修改訪問權(quán)限等。修改存儲過程與修改存儲函數(shù)、刪除存儲過程與刪除存儲函數(shù),這兩類操作方法高度相似,因此,本任務(wù)只介紹修改和刪除存儲過程的操作。305本任務(wù)通過Navicat,在教學(xué)管理系統(tǒng)數(shù)據(jù)庫“schoolsys”中使用SQL語句,將存儲過程“everyone_grade”的特性修改為“MODIFIES?SQL?DATA”,如圖所示,隨后使用關(guān)鍵字DROP刪除該存儲過程。306修改存儲過程一、修改存儲過程與存儲函數(shù)的特性1.?存儲過程與存儲函數(shù)的特性在MySQL中,存儲過程與存儲函數(shù)的特性用于設(shè)置其訪問權(quán)限和規(guī)定程序中對SQL語句的操作權(quán)限,存儲過程與存儲函數(shù)的特性及功能見下表。307308存儲過程與存儲函數(shù)的特性及功能2.?修改存儲過程的特性使用ALTER語句可以修改存儲過程的特性,其具體的SQL語法格式如下。3.?修改存儲函數(shù)的特性和

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論