簡單記錄一下日常會用到的遊標
阿新 • • 發佈:2018-08-28
判斷語句 size into 由於 spa 一行 from 子句 需要
-
什麽是遊標
遊標是處理結果集的一種機制 ,而結果集就是select查詢返回的所有行數據的集合。
-
遊標的用處
1.定位到結果集中的某一行。
2.對當前位置的數據進行讀寫。
3.可以對結果集中的數據單獨操作。而不是整行執行操作。
-
遊標的分類
1.靜態遊標:操作之後,靜態遊標中select的數據依舊顯示的為沒有操作之前的數據。
2.動態遊標:所有用戶做的增刪改語句通過遊標均可見。如果使用API函數或T-SQL Where Current of子句通過遊標進行更新,他們將立即可見。
3.只進遊標:只進遊標不支持滾動,只支持從頭到尾順序提取數據,數據庫執行增刪改,在提取時是可見的,但由於該遊標只能進不能向後滾動,所以在行提取後對行做增刪改是不可見的。
-
遊標的生命周期
遊標的生命周期包含五個階段:聲明遊標,打開遊標,讀取遊標數據,關閉遊標,釋放遊標。
-
遊標的語法
--臨時變量,用來保存遊標值 declare @參數1 參數類型, @參數2 參數類型, @參數3 參數類型 --聲明遊標 declare y_curr cursor for --需要循環的結果集 select (字段1,字段2) from (表名) where (條件); --打開遊標 open y_curr ----開始循環遊標變量 fetch next from Y_curr into @參數1,@參數2 --返回被 FETCH 語句執行的最後遊標的狀態,而不是任何當前被連接打開的遊標的狀態。 while(@@fetch_status=0) begin --判斷語句 --開始循環遊標變量 fetch next from y_curr into @參數1,@參數2 end --關閉遊標 close y_curr --釋放遊標 deallocate y_curr
簡單記錄一下日常會用到的遊標