資料庫視訊總結(五)——遊標的使用
阿新 • • 發佈:2018-11-10
遊標概述
是什麼?
是一種資料訪問機制,它允許使用者訪問單獨的資料行,而不是對整個行集進行操作,使用者可以通過單獨處理每一行逐條收集資訊並對資料行集進行操作,使用者可以通過單獨處理每一行逐條收集資訊並對資料逐行進行操作,這樣可以降低系統開銷和潛在的阻隔情況
主要包括兩部分:
1、遊標結果集:有定義遊標的SELECT語句返回的行的集合
2、遊標位置:指向這個結果集中的某一行的指標
使用的意義
1、遊標返回一個完整的結果集,允許呼叫一行
2、允許定位在結果集的特定行
3、從結果集的當前位置檢索一行或多行
4、支援對資料行進行修改
5、可以為其他使用者對顯示在結果集中的資料庫所做的更改提供不同級別的可見性支援
6、提供指令碼,儲存過程和觸發器中使用的訪問結果集中資料的T SQL 語句
遊標的宣告
語法格式:
DECLARE cursor_name+型別
For select
舉例宣告遊標:
declare student_cursor scroll cursor
for
select * from 學生資訊
for read only
操作遊標
步驟:
Open+關鍵字
檢索遊標
Fetch
標識
Relative
關閉遊標
Close
釋放遊標
Deallocate
舉例:
declare stu_cursor scroll cursor for
select 姓名 from 學生資訊
declare @name varchar (20)
open stu_cursor
fetch last from stu_cursor
into @name
print @name
判斷遊標提取狀態
@@fetch_status
取值:
1、返回0,資料提取成功
2、-1、語句失敗或行不在結果集中
3、-2 提取的行不存在
舉例:
declare stu_cursor scroll cursor for
select 姓名 from 學生資訊
open stu_cursor
declare @name varchar(20)
fetch next from stu_cursor
into @name
if @@fetch_status=0
print @name
else
print'提取資料錯誤'
close stu_cursor
deallocate stu_cursor