在MySQL存儲(chǔ)過(guò)程的語(yǔ)句中有三個(gè)標(biāo)準(zhǔn)的循環(huán)方式:WHILE循環(huán),LOOP循環(huán)以及REPEAT循環(huán)。還有一種非標(biāo)準(zhǔn)的循環(huán)方式:GOTO,不過(guò)這種循環(huán)方式最好別用,很容易引起程序的混亂,在這里就不錯(cuò)具體介紹了。
順城網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站從2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
雖然沒(méi)分行,但程序應(yīng)該沒(méi)錯(cuò),問(wèn)題是這個(gè)程序應(yīng)該用在SQL Server之類(lèi)的數(shù)據(jù)庫(kù)里,MySQL不支持@i這樣的自定義變量。如果你要在MySQL中使用的話(huà),需要用存儲(chǔ)過(guò)程等方式去實(shí)現(xiàn)。
while是滿(mǎn)足條件才執(zhí)行循環(huán),repeat是滿(mǎn)足條件退出循環(huán);while在首次循環(huán)執(zhí)行之前就判斷條件,最少執(zhí)行0次,repeat是在首次執(zhí)行循環(huán)之后才判斷條件,循環(huán)至少執(zhí)行一次。
1、END 這樣就跳出循環(huán)了,也可以換成RETURN,RETURN會(huì)結(jié)束整個(gè)批查詢(xún)的執(zhí)行,BREAK僅僅跳出循環(huán),繼續(xù)執(zhí)行后邊的語(yǔ)句。
2、DECLARE CONTINUE HANDLER FOR SQLSTATE 02000 SET DONE = 1;這種語(yǔ)句是異常捕獲內(nèi)容,在mysql中都是使用HANDLER 來(lái)捕獲異常的。
3、結(jié)束標(biāo)志是先通過(guò)一個(gè)FETCH INTO ,然后判斷游標(biāo)中是否還存在內(nèi)容,如果沒(méi)有內(nèi)容就會(huì)執(zhí)行 SET ending = TRUE; (定義代碼中的),然后通過(guò)ending的判斷即可跳出循環(huán)。
4、本文實(shí)例講述了MySQL實(shí)現(xiàn)創(chuàng)建存儲(chǔ)過(guò)程并循環(huán)添加記錄的方法。
1、第一步,編寫(xiě)存儲(chǔ)過(guò)程的整體結(jié)構(gòu),定義變量,見(jiàn)下圖,轉(zhuǎn)到下面的步驟。第二步,完成上述步驟后,定義游標(biāo),具體的代碼見(jiàn)下圖,轉(zhuǎn)到下面的步驟。
2、沒(méi)有多循環(huán)一次,只是循環(huán)結(jié)束后,循環(huán)控制變量會(huì)是終值的下一個(gè),但是并沒(méi)有多執(zhí)行一次循環(huán)體。
3、傳入id,輸出name和sex的存儲(chǔ)過(guò)程,這里同個(gè)id有多條數(shù)據(jù),所以需要用到游標(biāo)。
4、IF vIndex = 0 THEN -- 參數(shù)中沒(méi)有逗號(hào),直接返回. RETURN vResult; END IF; -- 初始化情況,前一個(gè)逗號(hào)不存在. SET vPrevIndex = 0; -- 循環(huán)處理。
5、像這種帶有邏輯性的處理,需要寫(xiě)存儲(chǔ)過(guò)程,簡(jiǎn)單的sql語(yǔ)句不支持這種業(yè)務(wù)處理。
6、所以要事先用DELIMITER關(guān)鍵字申明當(dāng)前段分隔符,這樣MySQL才會(huì)將當(dāng)做存儲(chǔ)過(guò)程中的代碼,不會(huì)執(zhí)行這些代碼,用完了之后要把分隔符還原。
當(dāng)前題目:mysql怎么退出循環(huán) mysql跳出循環(huán)的關(guān)鍵字
標(biāo)題網(wǎng)址:http://aaarwkj.com/article1/didshod.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、網(wǎng)站制作、定制開(kāi)發(fā)、用戶(hù)體驗(yàn)、響應(yīng)式網(wǎng)站、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)