《MySQL數(shù)據(jù)庫應(yīng)用與管理(第3版)》 課件 8.4 流程控制語句_第1頁
《MySQL數(shù)據(jù)庫應(yīng)用與管理(第3版)》 課件 8.4 流程控制語句_第2頁
《MySQL數(shù)據(jù)庫應(yīng)用與管理(第3版)》 課件 8.4 流程控制語句_第3頁
《MySQL數(shù)據(jù)庫應(yīng)用與管理(第3版)》 課件 8.4 流程控制語句_第4頁
《MySQL數(shù)據(jù)庫應(yīng)用與管理(第3版)》 課件 8.4 流程控制語句_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

存儲過程和存儲函數(shù)

流程控制語句

本節(jié)內(nèi)容1.IF語句2.CASE語句3.WHILE語句4.REPEAT語句5.LOOP、LEAVE語句6.ITERATE語句流程控制語句IF語句用來進(jìn)行條件判斷,根據(jù)是否滿足條件,將執(zhí)行不同的語句。其語法格式如下:

IF<條件表達(dá)式1>THEN<語句塊1> [ELSEIF<條件表達(dá)式2>THEN<語句塊2>] … [ELSE<語句塊n>] ENDIF1.IF語句操作案例知識點(diǎn)概述示例8-16運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲過程up_scoreStateInfo,通過一個(gè)給定的學(xué)號和課程號,查詢出該學(xué)生指定課程的成績,如果成績合格,則返回1;否則返回0。操作案例知識點(diǎn)概述示例8-17運(yùn)行結(jié)果如下:調(diào)用示例8-16的存儲過程up_scoreStateInfo,獲取學(xué)號為“1308013101”學(xué)生的“01001”課程的成績情況(0/1)。操作案例知識點(diǎn)概述示例8-18運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲過程up_scoreRankInfo,通過一個(gè)給定的學(xué)號和課程號,查詢出該學(xué)生指定課程的成績,并把成績轉(zhuǎn)換為等級制進(jìn)行返回。操作案例知識點(diǎn)概述示例8-19運(yùn)行結(jié)果如下:調(diào)用示例8-18的存儲過程up_scoreRankInfo,獲取學(xué)號為“1308013101”學(xué)生的“01001”課程的成績等級。流程控制語句簡單CASE語句語法格式如下:

CASE<表達(dá)式名稱> WHEN<表達(dá)式值1>THEN<結(jié)果1> [WHEN<表達(dá)式值2>THEN<結(jié)果2>]… [ELSE<結(jié)果n>] END[CASE]2.CASE語句流程控制語句搜索CASE語句語法格式如下:

CASE WHEN<條件表達(dá)式1>THEN<結(jié)果1> [WHEN<條件表達(dá)式2>THEN<結(jié)果2>]… [ELSE<結(jié)果n>] END[CASE]2.CASE語句操作案例知識點(diǎn)概述示例8-20運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲過程up_scoreRankInfo1,通過一個(gè)給定的學(xué)號和課程號,查詢出該學(xué)生指定課程的成績,并把成績轉(zhuǎn)換為等級制進(jìn)行返回(使用CASE語句實(shí)現(xiàn))。操作案例知識點(diǎn)概述示例8-21運(yùn)行結(jié)果如下:調(diào)用示例8-20的存儲過程up_scoreRankInfo1,獲取學(xué)號為“1308013101”學(xué)生的“01002”課程的成績等級。操作案例知識點(diǎn)概述示例8-22運(yùn)行結(jié)果如下:查詢成績表(score),輸出學(xué)號、課程編號、成績以及成績等級。操作案例知識點(diǎn)概述示例8-23運(yùn)行結(jié)果如下:查詢學(xué)生表(student),輸出學(xué)號、姓名、性別和班級,要求將性別“男”替換為“♂”、性別“女”替換為“♀”。流程控制語句WHILE語句是有條件控制的循環(huán)語句,當(dāng)滿足條件時(shí),執(zhí)行循環(huán)體內(nèi)的語句。其語法格式如下:

[label:]WHILE<條件表達(dá)式>DO <語句塊> ENDWHILE[label]3.WHILE語句操作案例知識點(diǎn)概述示例8-24運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲函數(shù)func_sum,用來計(jì)算1+2+3+…+n的和。操作案例知識點(diǎn)概述示例8-25運(yùn)行結(jié)果如下:調(diào)用示例8-24的存儲函數(shù)func_sum,返回1+2+3+…+100的和。流程控制語句REPEAT語句也是有條件控制的循環(huán)語句,當(dāng)滿足特定條件時(shí),則會終止循環(huán),跳出循環(huán)體。其語法格式如下:

[label:]REPEAT <語句塊> UNTIL<條件表達(dá)式> ENDREPEAT[label]4.REPEAT語句操作案例知識點(diǎn)概述示例8-26運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲函數(shù)func_sum1,用來計(jì)算1+2+3+…+n的和(使用REPEAT語句實(shí)現(xiàn))。操作案例知識點(diǎn)概述示例8-27運(yùn)行結(jié)果如下:調(diào)用示例8-26的存儲函數(shù)func_sum1,返回1+2+3+…+100的和。流程控制語句LOOP語句可以使某些特定的語句重復(fù)執(zhí)行,實(shí)現(xiàn)一個(gè)簡單的循環(huán)。但是LOOP語句本身沒有終止循環(huán)的語句,必須配合LEAVE語句使用才更有意義,否則是一個(gè)死循環(huán)。其語法格式如下:

[label:]LOOP <語句塊> [LEAVElabel] ENDLOOP[label]5.LOOP、LEAVE語句操作案例知識點(diǎn)概述示例8-28運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲函數(shù)func_sum2,用來計(jì)算1+2+3+…+n的和(使用LOOP和LEAVE語句實(shí)現(xiàn))。操作案例知識點(diǎn)概述示例8-29運(yùn)行結(jié)果如下:調(diào)用示例8-28的存儲函數(shù)func_sum2,返回1+2+3+…+100的和。流程控制語句TERATE語句可用于跳過本次循環(huán)中尚未執(zhí)行的語句,即ITERATE語句后面的任何語句不再執(zhí)行,重新開始新一輪的循環(huán)。其語法格式如下: ITERATElabel6.ITERATE語句操作案例知識點(diǎn)概述示例8-30運(yùn)行結(jié)果如下:創(chuàng)建一個(gè)存儲函數(shù)func_sum3,用來計(jì)算1+2+3+…+n的和,但不包括同時(shí)能被3和7

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論