版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、,孔祥盛,MySQL數(shù)據(jù)庫(kù)基礎(chǔ)與實(shí)例教程 之 存儲(chǔ)過(guò)程與游標(biāo),1,2,3,本章主要講解如何在MySQL中使用存儲(chǔ)過(guò)程,并結(jié)合“選課系統(tǒng)”講解存儲(chǔ)過(guò)程在該系統(tǒng)中的應(yīng)用,最后本章對(duì)存儲(chǔ)程序做了總結(jié)。,4,錯(cuò)誤觸發(fā)條件和錯(cuò)誤處理,存儲(chǔ)過(guò)程,游標(biāo),預(yù)處理SQL語(yǔ)句,5,存儲(chǔ)程序的說(shuō)明,內(nèi)容一覽,1,2,3,存儲(chǔ)過(guò)程也可以看作是一個(gè)“加工作坊”,它接收“調(diào)用者”傳遞過(guò)來(lái)的“原料”( in參數(shù)),然后將這些“原料”“加工處理”成“產(chǎn)品”( 存儲(chǔ)過(guò)程的out參數(shù)或inout參數(shù)),再把“產(chǎn)品”返回給“調(diào)用者”。,存儲(chǔ)過(guò)程的調(diào)用,創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,“選課系統(tǒng)”的存儲(chǔ)過(guò)程,4,5,查看存儲(chǔ)過(guò)程的定義,刪除
2、存儲(chǔ)過(guò)程,6,存儲(chǔ)過(guò)程與函數(shù)的比較,8.1 存儲(chǔ)過(guò)程,創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式如下。 create procedure 存儲(chǔ)過(guò)程名(參數(shù)1,參數(shù)2,) 存儲(chǔ)過(guò)程選項(xiàng) begin 存儲(chǔ)過(guò)程語(yǔ)句塊; end;,8.1.1 創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,存儲(chǔ)過(guò)程選項(xiàng)由以下一種或幾種選項(xiàng)組合而成。具體含義請(qǐng)查看函數(shù)選項(xiàng)的內(nèi)容。 language sql | not deterministic | contains sql | no sql | reads sql data | modifies sql data | sql security definer | invoker | comment 注釋,8.1
3、.1 創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,與函數(shù)相同之處在于:存儲(chǔ)過(guò)程的參數(shù)也是局部變量,也需要提供參數(shù)的數(shù)據(jù)類型;與函數(shù)不同的是,存儲(chǔ)過(guò)程有三種類型的參數(shù):in參數(shù)、out參數(shù)以及inout參數(shù)。,8.1.1 創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,in代表輸入?yún)?shù)(默認(rèn)情況下為in參數(shù)),表示該參數(shù)的值必須由調(diào)用程序指定; out代表輸出參數(shù),表示該參數(shù)的值經(jīng)存儲(chǔ)過(guò)程計(jì)算后,將out參數(shù)的計(jì)算結(jié)果返回給調(diào)用程序; inout代表即是輸入?yún)?shù),又是輸出參數(shù),表示該參數(shù)的值即可以由調(diào)用程序指定,又可以將inout參數(shù)的計(jì)算結(jié)果返回給調(diào)用程序。,8.1.1 創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,例如下面的存儲(chǔ)過(guò)程:,delimiter
4、$ create procedure get_choose_number_proc(in student_no1 int,out choose_number int) reads sql data begin select count(*) into choose_number from choose where student_no=student_no1; end $ delimiter ;,8.1.1 創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)法格式,調(diào)用存儲(chǔ)過(guò)程須使用call關(guān)鍵字,另外還要向存儲(chǔ)過(guò)程傳遞in參數(shù)、out參數(shù)或者inout參數(shù)。 例如:,set student_no = 2012001; set
5、 choose_number = 0; call get_choose_number_proc(student_no,choose_number); select choose_number;,8.1.2 存儲(chǔ)過(guò)程的調(diào)用,存儲(chǔ)過(guò)程get_choose_number_proc()中的in參數(shù)與out參數(shù)的數(shù)據(jù)類型都為整數(shù),也可以將這兩個(gè)參數(shù)簡(jiǎn)化為一個(gè)inout參數(shù)。,8.1.2 存儲(chǔ)過(guò)程的調(diào)用,delimiter $ create procedure get_choose_number1_proc(inout number int) reads sql data begin select cou
6、nt(*) into number from choose where student_no=number ; end $ delimiter ;,8.1.2 存儲(chǔ)過(guò)程的調(diào)用,set number = 2012001; call get_choose_number1_proc(number); select number;,8.1.2 存儲(chǔ)過(guò)程的調(diào)用,任務(wù)布置1:上機(jī)操作,完成本書(shū)場(chǎng)景描述1的任務(wù)要求。 任務(wù)布置2:上機(jī)操作,完成本書(shū)場(chǎng)景描述2的任務(wù)要求。 任務(wù)布置3:上機(jī)操作,完成本書(shū)場(chǎng)景描述3的任務(wù)要求。,8.1.3 “選課系統(tǒng)”的存儲(chǔ)過(guò)程,可以使用下面四種方法查看存儲(chǔ)過(guò)程的定義、權(quán)限、字
7、符集等信息。 1使用show procedure status命令查看存儲(chǔ)過(guò)程的定義。 2查看某個(gè)數(shù)據(jù)庫(kù)(例如choose數(shù)據(jù)庫(kù))中的所有存儲(chǔ)過(guò)程名,可以使用下面的SQL語(yǔ)句。 select name from c where db = choose and type = procedure;,8.1.4 查看存儲(chǔ)過(guò)程的定義,3使用MySQL命令“show create procedure 存儲(chǔ)過(guò)程名;”可以查看指定數(shù)據(jù)庫(kù)指定存儲(chǔ)過(guò)程的詳細(xì)信息。 例如查看get_choose_number_proc()存儲(chǔ)過(guò)程的詳細(xì)信息,可以使用“show create procedure
8、get_choose_number_procG”,8.1.4 查看存儲(chǔ)過(guò)程的定義,4存儲(chǔ)過(guò)程的信息都保存在information_schema數(shù)據(jù)庫(kù)中的routines表中,可以使用select語(yǔ)句查詢存儲(chǔ)過(guò)程的相關(guān)信息. 例如下面的SQL語(yǔ)句查看的是get_choose_number_proc()存儲(chǔ)過(guò)程的相關(guān)信息。 select * from information_schema.routines where routine_name= get_choose_number_procG,8.1.4 查看存儲(chǔ)過(guò)程的定義,存儲(chǔ)過(guò)程與函數(shù)之間的共同特點(diǎn)在于: 應(yīng)用程序調(diào)用存儲(chǔ)過(guò)程或者函數(shù)時(shí),只需要
9、提供存儲(chǔ)過(guò)程名或者函數(shù)名,以及參數(shù)信息,無(wú)需將若干條MySQL命令或SQL語(yǔ)句發(fā)送到MySQL服務(wù)器,節(jié)省了網(wǎng)絡(luò)開(kāi)銷。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的共同特點(diǎn)在于: 存儲(chǔ)過(guò)程或者函數(shù)可以重復(fù)使用,可以減少數(shù)據(jù)庫(kù)開(kāi)發(fā)人員,尤其是應(yīng)用程序開(kāi)發(fā)人員的工作量。 使用存儲(chǔ)過(guò)程或者函數(shù)可以增強(qiáng)數(shù)據(jù)的安全訪問(wèn)控制??梢栽O(shè)定只有某些數(shù)據(jù)庫(kù)用戶才具有某些存儲(chǔ)過(guò)程或者函數(shù)的執(zhí)行權(quán)。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的不同之處在于: 函數(shù)必須有且僅有一個(gè)返回值,且必須指定返回值數(shù)據(jù)類型(返回值類型目前僅僅支持字符串、數(shù)值類型)。存儲(chǔ)過(guò)程可以沒(méi)有返回值,也可以有返回值,甚至
10、可以有多個(gè)返回值,所有的返回值需要使用out或者inout參數(shù)定義。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的不同之處在于: 函數(shù)體內(nèi)可以使用selectinto語(yǔ)句為某個(gè)變量賦值,但不能使用select語(yǔ)句返回結(jié)果(或者結(jié)果集)。存儲(chǔ)過(guò)程則沒(méi)有這方面的限制,存儲(chǔ)過(guò)程甚至可以返回多個(gè)結(jié)果集。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的不同之處在于: 函數(shù)可以直接嵌入到SQL語(yǔ)句(例如select語(yǔ)句中)或者M(jìn)ySQL表達(dá)式中,最重要的是函數(shù)可以用于擴(kuò)展標(biāo)準(zhǔn)的SQL語(yǔ)句。存儲(chǔ)過(guò)程一般需要單獨(dú)調(diào)用,并不會(huì)嵌入到SQL語(yǔ)句中使用(例如select語(yǔ)句中),調(diào)用時(shí)需要使用ca
11、ll關(guān)鍵字。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的不同之處在于: 函數(shù)中的函數(shù)體限制比較多,比如函數(shù)體內(nèi)不能使用以顯式或隱式方式打開(kāi)、開(kāi)始或結(jié)束事務(wù)的語(yǔ)句,如start transaction、commit、rollback或者set autocommit=0等語(yǔ)句;不能在函數(shù)體內(nèi)使用預(yù)處理SQL語(yǔ)句(稍后講解)。存儲(chǔ)過(guò)程的限制相對(duì)就比較少,基本上所有的SQL語(yǔ)句或MySQL命令都可以在存儲(chǔ)過(guò)程中使用。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,存儲(chǔ)過(guò)程與函數(shù)之間的不同之處在于: 應(yīng)用程序(例如Java、PHP等應(yīng)用程序)調(diào)用函數(shù)時(shí),通常將函數(shù)封裝到SQL字符串(例如select語(yǔ)句
12、)中進(jìn)行調(diào)用;應(yīng)用程序(例如Java、PHP等應(yīng)用程序)調(diào)用存儲(chǔ)過(guò)程時(shí),必須使用call關(guān)鍵字進(jìn)行調(diào)用,如果應(yīng)用程序希望獲取存儲(chǔ)過(guò)程的返回值,應(yīng)用程序必須給存儲(chǔ)過(guò)程的out參數(shù)或者inout參數(shù)傳遞MySQL會(huì)話變量,才能通過(guò)該會(huì)話變量獲取存儲(chǔ)過(guò)程的返回值。,8.1.6 存儲(chǔ)過(guò)程與函數(shù)的比較,默認(rèn)情況下,存儲(chǔ)程序運(yùn)行過(guò)程中(例如存儲(chǔ)過(guò)程或者函數(shù))發(fā)生錯(cuò)誤時(shí),MySQL將自動(dòng)終止存儲(chǔ)程序的執(zhí)行。存儲(chǔ)程序運(yùn)行過(guò)程中發(fā)生錯(cuò)誤時(shí),數(shù)據(jù)庫(kù)開(kāi)發(fā)人員有時(shí)希望自己控制程序的運(yùn)行流程,并不希望MySQL將自動(dòng)終止存儲(chǔ)程序的執(zhí)行,MySQL的錯(cuò)誤處理機(jī)制可以幫助數(shù)據(jù)庫(kù)開(kāi)發(fā)人員自行控制程序流程。,8.2 錯(cuò)誤觸發(fā)條
13、件和錯(cuò)誤處理,1,2,3,存儲(chǔ)程序運(yùn)行過(guò)程中(例如存儲(chǔ)過(guò)程或者函數(shù))發(fā)生錯(cuò)誤時(shí) MySQL的錯(cuò)誤處理機(jī)制可以幫助數(shù)據(jù)庫(kù)開(kāi)發(fā)人員自行控制程序流程。,自定義錯(cuò)誤觸發(fā)條件,自定義錯(cuò)誤處理程序,自定義錯(cuò)誤處理程序說(shuō)明,8.2 錯(cuò)誤觸發(fā)條件和錯(cuò)誤處理,自定義錯(cuò)誤處理程序時(shí)需要使用declare關(guān)鍵字,語(yǔ)法格式如下。 declare 錯(cuò)誤處理類型 handler for 錯(cuò)誤觸發(fā)條件 自定義錯(cuò)誤處理程序;,8.2.1 自定義錯(cuò)誤處理程序,錯(cuò)誤處理類型的取值要么是continue,要么是exit。 當(dāng)錯(cuò)誤處理類型是continue時(shí),表示錯(cuò)誤發(fā)生后,MySQL立即執(zhí)行自定義錯(cuò)誤處理程序,然后忽略該錯(cuò)誤繼續(xù)執(zhí)
14、行其他MySQL語(yǔ)句。 當(dāng)錯(cuò)誤處理類型是exit時(shí),表示錯(cuò)誤發(fā)生后,MySQL立即執(zhí)行自定義錯(cuò)誤處理程序,然后立刻停止其他MySQL語(yǔ)句的執(zhí)行。,8.2.1 自定義錯(cuò)誤處理程序,錯(cuò)誤觸發(fā)條件:表示滿足什么條件時(shí),自定義錯(cuò)誤處理程序開(kāi)始運(yùn)行,錯(cuò)誤觸發(fā)條件定義了自定義錯(cuò)誤處理程序運(yùn)行的時(shí)機(jī)。 錯(cuò)誤觸發(fā)條件有3種取值:MySQL錯(cuò)誤代碼、ANSI標(biāo)準(zhǔn)錯(cuò)誤代碼以及自定義錯(cuò)誤觸發(fā)條件。例如1452是MySQL錯(cuò)誤代碼,它對(duì)應(yīng)于ANSI標(biāo)準(zhǔn)錯(cuò)誤代碼23000,自定義錯(cuò)誤觸發(fā)條件稍后講解。,8.2.1 自定義錯(cuò)誤處理程序,自定義錯(cuò)誤處理程序:錯(cuò)誤發(fā)生后,MySQL會(huì)立即執(zhí)行自定義錯(cuò)誤處理程序中的MySQL語(yǔ)
15、句,自定義錯(cuò)誤處理程序也可以是一個(gè)begin-end語(yǔ)句塊。 任務(wù)布置4:上機(jī)操作,完成本書(shū)場(chǎng)景描述4:自定義錯(cuò)誤處理程序的任務(wù)要求。,8.2.1 自定義錯(cuò)誤處理程序,自定義錯(cuò)誤觸發(fā)條件允許數(shù)據(jù)庫(kù)開(kāi)發(fā)人員為MySQL錯(cuò)誤代碼或者ANSI標(biāo)準(zhǔn)錯(cuò)誤代碼命名,語(yǔ)法格式如下。 declare 錯(cuò)誤觸發(fā)條件 condition for MySQL錯(cuò)誤代碼或者ANSI標(biāo)準(zhǔn)錯(cuò)誤代碼;,8.2.2 自定義錯(cuò)誤觸發(fā)條件,例如代碼片段: declare continue handler for 1452 begin set error1 = 外鍵約束錯(cuò)誤!; end; 可以替換成代碼片段:,8.2.2 自定義錯(cuò)誤
16、觸發(fā)條件, declare foreign_key_error condition for sqlstate 23000; declare continue handler for foreign_key_error begin set error1 = 外鍵約束錯(cuò)誤!; end; ,8.2.2 自定義錯(cuò)誤觸發(fā)條件,自定義錯(cuò)誤觸發(fā)條件以及自定義錯(cuò)誤處理程序可以在觸發(fā)器、函數(shù)以及存儲(chǔ)過(guò)程中使用。 參與軟件項(xiàng)目的多個(gè)數(shù)據(jù)庫(kù)開(kāi)發(fā)人員,如果每個(gè)人都自建一套錯(cuò)誤觸發(fā)條件以及錯(cuò)誤處理程序,極易造成MySQL錯(cuò)誤管理混亂。實(shí)際開(kāi)發(fā)過(guò)程中,建議數(shù)據(jù)庫(kù)開(kāi)發(fā)人員建立清晰的錯(cuò)誤處理規(guī)范,必要時(shí)可以將自定義錯(cuò)誤觸發(fā)條
17、件、自定義錯(cuò)誤處理程序封裝在一個(gè)存儲(chǔ)程序中。,8.2.3 自定義錯(cuò)誤處理程序說(shuō)明,1,2,數(shù)據(jù)庫(kù)開(kāi)發(fā)人員編寫(xiě)存儲(chǔ)過(guò)程(或者函數(shù))等存儲(chǔ)程序時(shí),有時(shí)需要存儲(chǔ)程序中的MySQL代碼掃描select結(jié)果集中的數(shù)據(jù),并對(duì)結(jié)果集中的每條記錄進(jìn)行簡(jiǎn)單處理,通過(guò)MySQL的游標(biāo)機(jī)制可以解決此類問(wèn)題。,游標(biāo)在“網(wǎng)絡(luò)選課” 系統(tǒng)中的使用,使用游標(biāo),8.3 游標(biāo),游標(biāo)的使用可以概括為聲明游標(biāo)、打開(kāi)游標(biāo)、從游標(biāo)中提取數(shù)據(jù)以及關(guān)閉游標(biāo)。,8.3.1 使用游標(biāo),1聲明游標(biāo) 聲明游標(biāo)需要使用declare語(yǔ)句,其語(yǔ)法格式如下。 declare 游標(biāo)名 cursor for select語(yǔ)句 使用declare語(yǔ)句聲明游標(biāo)
18、后,此時(shí)與該游標(biāo)對(duì)應(yīng)的select語(yǔ)句并沒(méi)有執(zhí)行,MySQL服務(wù)器內(nèi)存中并不存在與select語(yǔ)句對(duì)應(yīng)的結(jié)果集。,8.3.1 使用游標(biāo),2打開(kāi)游標(biāo) 打開(kāi)游標(biāo)需要使用open語(yǔ)句,其語(yǔ)法格式如下。 open 游標(biāo)名 使用open語(yǔ)句打開(kāi)游標(biāo)后,與該游標(biāo)對(duì)應(yīng)的select語(yǔ)句將被執(zhí)行,MySQL服務(wù)器內(nèi)存中將存放與select語(yǔ)句對(duì)應(yīng)的結(jié)果集。,8.3.1 使用游標(biāo),3從游標(biāo)中提取數(shù)據(jù) 從游標(biāo)中提取數(shù)據(jù)需要使用fetch語(yǔ)句,其語(yǔ)法格式如下。 fetch 游標(biāo)名 into 變量名1,變量名2, 說(shuō)明:變量名的個(gè)數(shù)必須與聲明游標(biāo)時(shí)使用的select語(yǔ)句結(jié)果集中的字段個(gè)數(shù)保持一致。,8.3.1 使用游
19、標(biāo),第一次執(zhí)行fetch語(yǔ)句時(shí),fetch語(yǔ)句從結(jié)果集中提取第一條記錄,再次執(zhí)行fetch語(yǔ)句時(shí),fetch語(yǔ)句從結(jié)果集中提取第二條記錄,以此類推。 fetch語(yǔ)句每次從結(jié)果集中僅僅提取一條記錄,因此fetch語(yǔ)句需要循環(huán)語(yǔ)句的配合,才能實(shí)現(xiàn)整個(gè)“結(jié)果集”的遍歷。,8.3.1 使用游標(biāo),當(dāng)使用fetch語(yǔ)句從游標(biāo)中提取最后一條記錄后,再次執(zhí)行fetch語(yǔ)句時(shí),將產(chǎn)生“ERROR 1329 (02000): No data to FETCH”錯(cuò)誤信息,數(shù)據(jù)庫(kù)開(kāi)發(fā)人員可以針對(duì)MySQL錯(cuò)誤代碼1329,自定義錯(cuò)誤處理程序以便結(jié)束“結(jié)果集”的遍歷。 注意:游標(biāo)錯(cuò)誤處理程序應(yīng)該放在聲明游標(biāo)語(yǔ)句之后。游
20、標(biāo)通常結(jié)合錯(cuò)誤處理程序一起使用,用于結(jié)束“結(jié)果集”的遍歷。,8.3.1 使用游標(biāo),4關(guān)閉游標(biāo) 關(guān)閉游標(biāo)使用close語(yǔ)句,其語(yǔ)法格式如下。 close 游標(biāo)名 關(guān)閉游標(biāo)的目的在于釋放游標(biāo)打開(kāi)時(shí)產(chǎn)生的結(jié)果集,節(jié)省MySQL服務(wù)器的內(nèi)存空間。游標(biāo)如果沒(méi)有被明確地關(guān)閉,游標(biāo)將在它被聲明的begin-end語(yǔ)句塊的末尾關(guān)閉。,8.3.1 使用游標(biāo),任務(wù)布置5:上機(jī)操作,完成本書(shū)場(chǎng)景描述5的任務(wù)要求,理解游標(biāo)的用法。,8.3.2 游標(biāo)在“網(wǎng)絡(luò)選課”系統(tǒng)中的使用,1,2,3,運(yùn)行期間,如果SQL語(yǔ)句不能發(fā)生動(dòng)態(tài)地變化,這種SQL語(yǔ)句稱為靜態(tài)SQL語(yǔ)句。 運(yùn)行期間,如果SQL語(yǔ)句或SQL所帶的參數(shù)可以發(fā)生動(dòng)
21、態(tài)變化,這種SQL語(yǔ)句稱為動(dòng)態(tài)SQL語(yǔ)句或者預(yù)處理SQL語(yǔ)句 。,“選課系統(tǒng)”中預(yù)處 理SQL語(yǔ)句的使用,預(yù)處理SQL語(yǔ)句 使用步驟,預(yù)處理SQL語(yǔ)句 的復(fù)雜應(yīng)用,4,靜態(tài)SQL語(yǔ)句與 預(yù)處理SQL語(yǔ)句,8.4 預(yù)處理SQL語(yǔ)句,MySQL支持預(yù)處理SQL語(yǔ)句,預(yù)處理SQL語(yǔ)句的使用主要包含三個(gè)步驟:創(chuàng)建預(yù)處理SQL語(yǔ)句、執(zhí)行預(yù)處理SQL語(yǔ)句以及釋放預(yù)處理SQL語(yǔ)句。 1創(chuàng)建預(yù)處理SQL語(yǔ)句 創(chuàng)建預(yù)處理SQL語(yǔ)句的語(yǔ)法格式如下。 prepare 預(yù)處理SQL語(yǔ)句名 from SQL字符串,8.4.1 預(yù)處理SQL語(yǔ)句使用步驟,2執(zhí)行預(yù)處理SQL語(yǔ)句 使用execute命令可以執(zhí)行預(yù)處理SQL語(yǔ)
22、句中定義的SQL語(yǔ)句,其語(yǔ)法格式如下。 execute 預(yù)處理名 using 填充數(shù)據(jù) ,填充數(shù)據(jù).,8.4.1 預(yù)處理SQL語(yǔ)句使用步驟,3釋放預(yù)處理SQL語(yǔ)句 當(dāng)預(yù)處理SQL語(yǔ)句不再使用時(shí),可以使用deallocate語(yǔ)句將該預(yù)處理SQL語(yǔ)句釋放。其語(yǔ)法格式如下。 deallocate prepare 預(yù)處理名,8.4.1 預(yù)處理SQL語(yǔ)句使用步驟,任務(wù)布置6:上機(jī)操作,完成本書(shū)場(chǎng)景描述6的任務(wù)要求,理解預(yù)處理SQL語(yǔ)句的用法。,8.4.2 “選課系統(tǒng)”中預(yù)處理SQL語(yǔ)句的使用,任務(wù)布置7:上機(jī)操作,完成本書(shū)場(chǎng)景描述7的任務(wù)要求,理解預(yù)處理SQL語(yǔ)句的用法。 任務(wù)布置8:上機(jī)操作,完成本書(shū)場(chǎng)景描述8的任務(wù)要求,理解預(yù)處理SQL語(yǔ)句的用法。,8.4.3 預(yù)處理SQL語(yǔ)句的復(fù)雜應(yīng)用,對(duì)于靜態(tài)SQL語(yǔ)句而言,每次將其發(fā)送到MySQL服務(wù)實(shí)例時(shí),MySQL服務(wù)實(shí)例都會(huì)對(duì)其進(jìn)行解析、執(zhí)行,然后將執(zhí)行結(jié)果返回給MySQL客戶機(jī)。 對(duì)于預(yù)處理SQL語(yǔ)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年智能制造技能??荚囶}及答案
- 2025中小學(xué)詩(shī)詞大會(huì)題庫(kù)100題題庫(kù)(含答案)
- 醫(yī)療器械考試試題(含答案)
- 2025工業(yè)互聯(lián)網(wǎng)技術(shù)考試及答案
- 2025年高中教師年度工作總結(jié)
- 2025年生產(chǎn)安全事故警示教育專題及答案
- 2025年機(jī)修鉗工(三級(jí))考試試卷含答案
- 品牌管理2026年價(jià)值傳遞
- 2026 年專用型離婚協(xié)議書(shū)官方模板
- 2026 年無(wú)財(cái)產(chǎn)離婚協(xié)議書(shū)官方模板
- 工業(yè)互聯(lián)網(wǎng)標(biāo)準(zhǔn)體系(版本3.0)
- 培養(yǎng)小學(xué)生的實(shí)驗(yàn)操作能力
- 河南省洛陽(yáng)市2023-2024學(xué)年九年級(jí)第一學(xué)期期末質(zhì)量檢測(cè)數(shù)學(xué)試卷(人教版 含答案)
- Unit-3-Reading-and-thinking課文詳解課件-高中英語(yǔ)人教版必修第二冊(cè)
- 氣動(dòng)回路圖與氣動(dòng)元件課件
- 《念奴嬌 赤壁懷古》《永遇樂(lè) 京口北固亭懷古》《聲聲慢》默寫(xiě)練習(xí) 統(tǒng)編版高中語(yǔ)文必修上冊(cè)
- 婦產(chǎn)科病史采集臨床思維
- 眾辰變頻器z2400t-15gy-1說(shuō)明書(shū)
- DB63T 393-2002草地鼠蟲(chóng)害、毒草調(diào)查技術(shù)規(guī)程
- 船體振動(dòng)的衡準(zhǔn)及減振方法
- 復(fù)議訴訟證據(jù)清單通用版
評(píng)論
0/150
提交評(píng)論