簡單游標分析

2021-09-05 16:36:04 字數 766 閱讀 3119

set nocount on     -- 建立測試環境 當 set nocount 為 on 時,不返回計數

declare @tb table(id int)  --定義臨時表

insert @tb(id)                     --插入資料

select id = 1 union all

select id = 2 union all

select id = 2 union all

select id = 1 union all

select id = 2

select * from @tb               --查詢資料

-- 游標處理

declare tb cursor local fast_forward              --定義游標

forselect id from @tb

open tb                       --開啟游標

fetch tb

while @@fetch_status = 0

begin

update @tb set          --執行更新語句

id = id + 2

where id = 1

fetch tb

endclose tb                 --關閉游標

deallocate tb    --刪除游標

select * from @tb        --查詢資料

簡單的游標

為什麼要用到游標呢?因為我們都知道,在pl sql 中,每次只能返回單行的資料,當返回多行時,資料庫會報錯,所以,游標就誕生了。那游標又是如何做得到呢?原來,游標類似於指標一樣,他可以逐行的讀取sql,然後輸出。我們可以通過以下步驟,定義和使用游標 1 申明 declare 乙個游標 2 開啟 op...

oracle游標簡單demo

declare 定義變數 row info varchar2 200 定義游標 cursor cur dept is select from emp where deptno 10 定義乙個游標變數cur dept row cur dept rowtype,該型別為游標cur dept中的一行資料型...

sqlserver簡單游標使用

這個是乙個簡單的user表叫my user 以下 及注釋 注 為注釋 建立乙個游標 declare my cursor cursor for my cursor為游標的名稱,隨便起 select id,name from my user 這是游標my cursor的值,這裡隨便發揮看業務場景 開啟游...