日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql begin end 用法_MySQL ------ 游标(CURSOR)(二十六)

發布時間:2024/7/23 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql begin end 用法_MySQL ------ 游标(CURSOR)(二十六) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MySQL執行檢索操作會返回一組稱為結果集的行,這組返回的行都是與SQL 語句相匹配的行(零行或多行),但是,使用簡單的select 語句,沒有辦法得到第一行、下一行、或前十行,也不存在一行地處理所有行簡單方法(也就是成批地處理它們),而有時,需要在檢索出來的行中前進或后退一行或多行,怎么辦來,之前了解的很難實現,那么本節的游標就可實現,,

游標(cursor):一個存儲在mysql服務器上數據庫查詢,它不是一條select 語句,而是被語句檢索出來的結果集。

好處:在存儲了游標之后,應用程序可以根據需要滾動或瀏覽其中的數據。

主要用于:交互式應用,其中用戶需要滾動屏幕上的數據,并對數據進行瀏覽或做出更改。

注意:不像多數DBMS,MySQL游標只能用于存儲過程和函數。

版本:MySQL 5 添加了對游標的支持,要使用的話MySQL版本需要在mysql 5 及以后的版本

one、注意使用游標的主要步驟:

1、在能夠使用游標前,必須聲明(定義)它。這個過程實際上沒有檢索數據,他只是使用select 語句。

2、一旦聲明后,必須打開游標以供使用。這個過程用前面定義的select 語句把數據實際檢索出來

3、對于填有數據游標,根據需要取出(檢索)各行。

4、在結束游標使用時,必須關閉游標

在聲明游標后,可根據需要頻繁地打開和關閉游標。在游標打開后,可根據需要頻繁地執行取操作。

two、創建游標

游標用declare 語句創建。DECLARE 命名游標,并定義相應地select 語句,根據需要帶where 和其他子句。

下面在存儲過程中使用declare 定義一個游標,存儲過程完成后游標也相應消失。

-- declare 游標名稱 cursor for 查詢語句

打開和關閉游標

--- OPEN 游標名;

在處理open 語句時執行查詢,存儲檢索出地數據以供瀏覽和滾動游標處理后,要關閉游標

--- CLOSE 游標名;

close會釋放游標使用的所有內部內存和資源,所有游標使用后都要進行關閉操作

在一個游標關閉后,如果沒有重新打開,則不能使用它。但是使用聲明過的游標不需要再次聲明,使用open 語句打開就行。

如果不明確的關閉游標,mysql 將會在到達end 語句的時候自動關閉它。

上述可以修改為:

mysql

上述的存儲過程聲明、打開和關閉一個游標,但對檢索出的數據什么也沒有做

three、使用游標數據 FETCH

在一個游標被打開后,可以使用 fetch 語句分別訪問它的每一行。

fetch 指定檢索什么數據(所需的列),檢索出來的數據存儲在什么地方。還向前移動游標中的內部指針,使下一條fetch語句檢索下一行(避免重復讀取一行)。

-- 從游標中檢索單個行(第一行)

fetch 檢索當前行的order_num 列(將自動從第一行開始)買到一個名為onum 的局部變量中,對檢索出的數據不做任何處理。

-- 循環檢索數據,從第一行到最后一行

上述使用fetch 檢索當前order_num 到聲明為onum 的變量中,但是 這個fetch 在repeat 內,因此他會反復執行直到done 為真(由nutil done end repeat ;規定)為使它起作用用一個defaut 0 定義變量 done ,那么done 根據以下代碼設置為真

declare continue handler for sqlstate '02000' set done=1;

上述,定義了一個CONTINUE HANDLER(繼續處理程序) ,他是在條件出現時執行的代碼,這里是指當SQLSTATE '02000' 出現時,SET done =1.

SQLSTATE '02000' 是一個未找到條件,當REPEAT 由于沒有更多的行供循環而不能繼續時出現

four、注意:

1、declare 語句的發布存在特定的次序,用戶declare 語句定義的局部變量必須定義任意游標或句柄之前的定義,而句柄必須在游標之后定義,不遵守此順序將產生錯誤信息。

2、如果調用這個存儲過程,他將定義幾個變量和一個continue handler ,定義并打開一個游標,重復讀取所有的行,然后關閉游標。如果一切正常可以在循環內放入任意需要的處理(在fetch 語句之后,循環結束之前)

3、除了repeat 語句外,MySQL 還支持循環語句,它可以用來重復執行代碼,直到使用 LEAVE 語句手動退出為止,通常REPEAT 語句的語法使它更適合于對游標進行循環。

總結

以上是生活随笔為你收集整理的mysql begin end 用法_MySQL ------ 游标(CURSOR)(二十六)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲h| 九九资源网 | 不卡网av| 毛片在哪看 | 成全世界免费高清观看 | 日韩在线播放一区 | av色资源 | 一级黄色短视频 | 特级西西444www高清大胆免费看 | 国产3p精品一区 | 大肉大捧一进一出好爽动态图 | 欧美 日韩 精品 | 欧美图片第一页 | 男人天堂资源网 | 潘金莲三级野外 | 天天插天天爱 | 久久激情综合网 | 午夜激情电影在线观看 | 亚洲国产果冻传媒av在线观看 | 四虎国产成人永久精品免费 | 欧美美女性高潮 | 美女a视频 | 亚洲 精品 综合 精品 自拍 | 黄色网址你懂得 | 超碰美女 | 欧美性一区二区三区 | 中文字幕亚洲专区 | 在线观看亚洲成人 | 青青操狠狠干 | 调教驯服丰满美艳麻麻在线视频 | 超碰在线观看免费 | 久久精品这里有 | 国产99对白在线播放 | 胸网站 | 九九热视频精品 | japanese21ⅹxx日本 | 日本精品一区二区三区四区的功能 | 亚洲一卡二卡在线观看 | 国产一级特黄视频 | 黄色污污视频软件 | 久久久国产精华液 | 大地资源中文第三页 | 天天操天天摸天天干 | 美日韩中文字幕 | 又黄又爽又刺激的视频 | 一区精品在线观看 | 亚洲一区二区三区精品视频 | 天堂在线1 | 久久精品一区二区三区四区 | 亚洲视频欧洲视频 | www.4hu95.com四虎| av免费观看网站 | 国产高潮失禁喷水爽到抽搐 | 日韩欧美激情在线 | 国产超碰av | 日本少妇色 | 亚洲jlzzjizz少妇 | 在线欧美一区 | 国产精品精品国产色婷婷 | 国产字幕侵犯亲女 | 中文字幕+乱码+中文乱 | 国产精品人成 | 国产成人免费视频网站 | 成人免费区一区二区三区 | 亚洲字幕成人中文在线观看 | 不卡视频一区二区 | 15—16女人毛片 | 中文字幕一区电影 | 黄色aaa视频 | 亚洲九九九| 色婷婷av久久久久久久 | 福利免费在线观看 | 伦理片波多野结衣 | 亚洲香蕉 | 亚洲看| 亚州av在线 | 成人免费淫片aa视频免费 | 人妻少妇精品中文字幕av蜜桃 | 全部免费毛片在线播放高潮 | japanese在线| 国产福利在线免费观看 | 久久丫精品国产亚洲av不卡 | 极品少妇xxxx精品少妇偷拍 | 双女主黄文 | 免费在线看污视频 | 7m精品福利视频导航 | 91你懂的| 99热这里精品 | 亚洲成人手机在线 | 精品一区二区电影 | 国产欧美色图 | 99精品99 | jizz亚洲女人高潮大叫 | 四虎视频在线观看 | 亚洲熟妇av乱码在线观看 | 成人免费在线看片 | 91看片网页版 | 欧美成人怡红院 | 亚洲天堂网址 |