sql2000 游標的使用

2021-04-19 22:15:28 字數 1657 閱讀 1751

一般情況下游標的使用應遵循以下5個步驟:

1. 宣告游標

2. 開啟游標

3. 從游標讀取行,並有選擇地進行處理

4. 關閉游標

5. 釋放游標

use pubs

/*宣告變數*/

declare @title varchar(100),@price smallmobey

/*宣告游標*/

declare price——cursor for

select title,price

from titles

where price<15

/*開啟游標*/

open price cursor

/*獲取資料並進行處理*/

fetch from price_cursor

into @title,@price

while @@fetch_status=0

begin

print @title+' '+convert(char(6),@price)+'$'

fetch next from price_cursor

into @title,@price

end/*關閉游標*/

close price——cursor

/*釋放游標*/

deallocate price_cursor

go獲取資料並進行處理

fetch語句用於從結果幾集中獲取一行資料。

fetch from cursor_name

他表示獲取結果集中的當前行

fetch next from price_cursor

fetch prior from price_cursor

first和last分別表示獲取第一條和最後一條資料

如果想獲取資料存入變數,可以使用into選項。

fetch from price_cursor

into @title,@price

如果返回0,表示fetch語句成功,如果返回-1,表示fetch語句失敗,如果返回-2,表示被提取的行不存在。

例如游標使用方法:

use db1

declare my_cursor cursor scroll dynamic /*scroll表示可隨意移動游標指標(否則只能向前),dynamic表示可以讀寫游標(否則游標唯讀)*/

forselect 姓名 from 個人資料

open my_cursor

declare @name sysname

fetch next from my_cursor into @name

while(@@fetch_status=0)

begin

print '姓名: ' + @name

fetch next from my_cursor into @name

endfetch first from my_cursor into @name

print @name

/* update 個人資料 set 姓名='zzg' where current of my_cursor */

/* delete from 個人資料 where current of my_cursor */

close my_cursor

deallocate my_cursor

SQL 游標的使用

我們都知道在關聯式資料庫中,都是面向集合進行查詢的,而游標卻是化整為零,是按行查詢的,舉個例子比如說之前那個壕買了99臺蘋果6,他可以一次性就買了99臺,這正是我們平常使用sql的方式,他也可以分成若干次買,這就是游標的方式,一次只查詢一行。游標分為游標型別和游標變數,對於游標變數來說,游標變數支援...

SQL游標的使用

sql游標的使用 2008 09 29 13 57 一 游標包括兩個部分 1 游標結果集 由定義該游標的select語句返回的行的集合 2 游標位置 指向這個集合中某行的指標 二 游標處理過程 使用declare 語句宣告 使用open語句開啟 使用fecth語句從游標中提取資料 判斷是否為空,為空...

SQL游標的使用

table1結構如下 id int name varchar 50 declare id int declare name varchar 50 declare cursor1 cursor for 定義游標cursor1 select from table1 使用游標的物件 跟據需要填入selec...