什麼是游標?
游標是sql 的一種資料訪問機制。可以將游標簡單的看成是查詢的結果集的乙個指標,可以根據需要在結果集上面來回滾動,瀏覽需要的資料。
游標的作用是什麼?
可以儲存查詢結果,方便查詢,可以建立乙個游標可以多次使用。提高查詢效率。
例項–宣告游標
declare cur_cust_level cursorfor select id,consumeramount from customers
–開啟游標
open cur_cust_level
–瀏覽資料,取資料id,customeraccount
–取資料–拿之前先定義兩個變數
declare @id int
declare @cacount int
fetch next from cur_cust_level into @id,@cacount
–迴圈往下
while(@@fetch_status=0)
begin
print @id+@cacount
fetch next from cur_cust_level into
@id,@cacount end 游標
–關閉游標close cur_cust_level
–釋放游標deallocate cur_cust_level
declare cur_statis cursor
forselect year(consumertime) yy,month(consumertime) mm,day(consumertime)dd,sum(consumeramount) yye from customers
group by year(consumertime),month(consumertime),day(consumertime)
–開啟游標
open cur_statis
–瀏覽資料並獲取
declare @yy varchar(50)
declare @mm varchar(50)
declare @dd varchar(50)
declare @yye int
fetch next from cur_statis into @yy,@mm,@dd,@yye
while(@@fetch_status=0)
begin
insert into statis values(@yy,@mm,@dd,@yye)
fetch next from cur_statis into @yy,@mm,@dd,@yyeend
–關閉游標
close cur_statis
deallocate cur_statis
select * from statis
資料庫游標的應用
關聯式資料庫中的操作會對整個行集產生影響。由select語句返回的行集包括所有滿足該語句where子句中條件的行,由語句所返回的完整的行集被稱為結果集。應用程式,特別是互動式聯機應用程式,並不總能將整個結果集作為乙個單元來有效地處理,這些應用程式需要一種機制以便每次處理一行或一部分行,游標就是提供這...
資料庫游標的編寫
1 定義游標 declare 游標名 cur youbiao cursor fast forward for select from 表名 fast forward 最快的游標 2 開啟游標 open 游標名 cur youbiao 2.1 對游標的操作 將每條資料讀取並輸出 2.1.1將游標向後移...
資料庫中游標的使用
1.為何使用游標 使用游標 cursor 的乙個主要的原因就是把集合操作轉換成單個記錄處理方式。用sql語言從資料庫中檢索資料後,結果放在記憶體的一塊區域中,且結果往往是乙個含有多個記錄的集合。游標機制允許使用者在sql server內逐行地訪問這些記錄,按照使用者自己的意願來顯示和處理這些記錄。2...