mysql游標 mysql游標例項演示

2021-10-25 14:03:50 字數 1313 閱讀 8554

剛接觸mysql游標的朋友們可能一時半會兒無法理解mysql游標是什麼,游標怎麼用,這邊拿了乙個簡單的mysql游標例項來演示給大家,或許大家看了就能馬上理解什麼是游標,一般什麼情況下使用游標.

整體感覺游標用得相對來說比較少,平時也感覺不出它有什麼作用,現在也是朦朦朧的概念吧。談談我對他的理解吧。游標其實就是乙個資料集合。我們把我們查詢 出來的所有資料放到乙個集合內,這個集合就叫做游標。而我們讀取其中的內容時,僅僅只能一條挨著一條往下讀或者往前讀。不能跳這讀。所有的資料集都讀取到 乙個游標內,我們可以對他們中間的每一條資料做不同的操作,暫時僅僅而已。讀完之後我們需要關閉游標,釋放記憶體空間。以下是乙個例子:

begin

declare o varchar(128);

declare no int;

declare cur_1 cursor for select id from test; #把select出來的資料全部儲存到游標cur_1中

declare continue handler for not found set no=1; #當讀到資料的最後一條時,設定no變數為1

set no=0; #初始化變數no為0

open cur_1; #開啟游標

while no=0 do #判斷是不是到了最後一條資料

fetch cur_1 into o; #讀取游標中的資料一一復給變數o。

update test set username='1988' where id=o;#這個不用解釋了吧

end while;

close cur_1;#最後關閉游標.游標裡面存放了那麼多資料總是要清理掉的吧。

endbegin

declareovarchar(128);

declarenoint;

declarecur_1cursorforselectidfromtest;#把select出來的資料全部儲存到游標cur_1中

declarecontinuehandlerfornotfoundsetno=1;#當讀到資料的最後一條時,設定no變數為1

setno=0;#初始化變數no為0

opencur_1;#開啟游標

whileno=0do#判斷是不是到了最後一條資料

fetchcur_1intoo;#讀取游標中的資料一一復給變數o。

updatetestsetusername='1988'whereid=o;#這個不用解釋了吧

endwhile;

closecur_1;#最後關閉游標.游標裡面存放了那麼多資料總是要清理掉的吧。

end個人感覺我的這個例子無法體現出遊標的作用,但是大家不凡通過這個例子來看看游標的一些語法。

mysql游標教程 MySql游標的使用例項

mysql游標使用的整個過程為 1.建立游標 declare calc bonus cursor for select id,salary,commission from employees 2.開啟游標 open calc bonus 3.使用游標 fetch calc bonus into re...

MySQL 游標 游標

游標cursor是用來儲存查詢結果集的 資料型別 在儲存過程和函式中可以使用游標對結果集進行迴圈的處理。游標的使用包括游標的宣告 open fetch 和 close,其語法分別如下 宣告游標 declare cursor name cursor for select statement open ...

mysql游標型別 MySQL 游標

drop procedure if exists processorders create procedure processorders begin declare done boolean default 0 declare a int declare b varchar 20 定義游標遍歷時,...