sql遊標

----定義 

 declare test_cursor1 cursor for 

  select * from test

  go

----打開

  open test_cursor1

----執行

  fetch next from test_cursor1

----關閉

  close test_cursor1

----釋放遊標

  deallocate test_cursor1

1.http://www.cnblogs.com/moss_tan_jun/archive/2011/11/26/2263988.html

2.http://www.cnblogs.com/quietwalk/archive/2011/10/17/2215428.html

----遊標的用法執行順序

1、定義遊標、打開遊標

declare test1_cursor cursor for
select className from class
open test1_cursor

----執行遊標(獲取數據並打印出來)
declare @class_name varchar(30)
declare @Allclassname varchar(max)
fetch test1_cursor into @class_name //把當前行className的數據付給變量@class_name 
set @Allclassname=@class_name
while(@@fetch_status=0)
begin
fetch test1_cursor  into @class_name
set @Allclassname=@Allclassname+','+@class_name
end
--print  @Allclassname    ------打印
select @Allclassname as allname
close test1_cursor
deallocate test1_cursor

---@@fetch_status的狀態含義

@@fetch_status是MicroSoft SQL SERVER的一個全局變量
其值有以下三種,分別表示三種不同含義:【返回類型integer】
0 FETCH 語句成功
-1 FETCH 語句失敗或此行不在結果集中
-2 被提取的行不存在


@@fetch_status是MicroSoft SQL SERVER的一個全局變量
其值有以下三種,分別表示三種不同含義:【返回類型integer】
0 FETCH 語句成功
-1 FETCH 語句失敗或此行不在結果集中
-2 被提取的行不存在

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章