用順口溜快速記憶SQL遊標的使用方法

SQL中的遊標在處理一些需要循環處理的邏輯時很有用處,但是由於使用頻率相對較低,經常會忘記使用方法,每用一次就要Google一次,很有挫敗感。於是下定決心要記在腦海了,於是就想到編寫一個順口溜“口訣”。

遊標原理

遊標原理可以概括爲將SQL查詢結果填入Cursor類型,Cursor類型可以看成是一個臨時表。然後通過循環一條一條的讀到變量中進行中處理。
遊標使用的“口訣”
聲明cursor要靠for
for的後面是SQL
定義好後要open
然後變量來存儲

先從(from)cursor取(fetch)一個
取後裝到變量裏
while循環來幫忙
邏輯要在whlie裏
用完一個下一個
@@fetch_status來截止

用完之後要關閉
關閉之後要清除
按口訣編寫示例
--聲明對應declare,注意cursor變量不帶@
declare cs_demo cursor  for
--for後面放查詢語句,根據具體需要自由發揮
select id,[name] from master.dbo.sysobjects where [type]='U'
--定義完成打開cursor
open cs_demo
--定義變量才存儲:用幾個字段就查詢幾個字段,相應定義幾個變量
declare @ID int,@Name varchar(100)
--取第一個
fetch next from cs_demo into @ID,@Name
--循環遍歷處理邏輯
while @@fetch_status=0
	begin
	--這裏是具體處理邏輯
	print str(@ID)+ '->' + @Name
	--用完一個下一個
	fetch next from cs_demo into @ID,@Name
	end
--關閉和銷燬
close cs_demo
deallocate cs_demo
發佈了59 篇原創文章 · 獲贊 4 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章