sql臨時表的使用 OraclePLSQL在游標中用while循環(huán)為什么沒有結(jié)果輸出?
OraclePLSQL在游標中用while循環(huán)為什么沒有結(jié)果輸出?@@fetch_status=0 是游標提取數(shù)據(jù)失敗,即數(shù)據(jù)提取結(jié)束到最后了。游標主要作用是,操作SQL查詢結(jié)果集。以下為典型游標的應
OraclePLSQL在游標中用while循環(huán)為什么沒有結(jié)果輸出?
@@fetch_status=0 是游標提取數(shù)據(jù)失敗,即數(shù)據(jù)提取結(jié)束到最后了。游標主要作用是,操作SQL查詢結(jié)果集。以下為典型游標的應用:create proc cursorTest@_id int=0,@_name varchar(50)=""as--創(chuàng)建游標declare @cursor cursor--設定游標欲操作的數(shù)據(jù)集set @cursor=cursor forselect _id,_name from usersopen @cursor--打開游標fetch next from @cursor into @_id,@_name--移動游標指向到第一條數(shù)據(jù),提取第一條數(shù)據(jù)存放在變量中while(@@fetch_status=0)begin--如果上一次操作成功則繼續(xù)循環(huán)print @_name--操作提出的數(shù)據(jù)fetch next from @cursor into @_id,@_name--繼續(xù)提下一行endclose @cursor--關(guān)閉游標deallocate @cursor--刪除游標
sqlserver中怎樣使用游標for循環(huán)?
給你舉個例子利用游標循環(huán)更新、刪除MemberAccount表中的數(shù)據(jù)DECLAREMy_CursorCURSOR--定義游標FOR(SELECT*FROMdbo.MemberAccount)--查出需要的集合放到游標中OPENMy_Cursor--打開游標FETCHNEXTFROMMy_Cursor--讀取第一行數(shù)據(jù)WHILE@@FETCH_STATUS=0BEGIN--UPDATEdbo.MemberAccountSETUserName=UserName "A"WHERECURRENTOFMy_Cursor--更新--DELETEFROMdbo.MemberAccountWHERECURRENTOFMy_Cursor--刪除FETCHNEXTFROMMy_Cursor--讀取下一行數(shù)據(jù)ENDCLOSEMy_Cursor--關(guān)閉游標DEALLOCATEMy_Cursor--釋放游標GO
sqlserver中怎樣使用游標for循環(huán)?
給你舉個例子利用游標循環(huán)更新、刪除MemberAccount表中的數(shù)據(jù)DECLARE My_Cursor CURSOR --定義游標FOR (SELECT * FROM dbo.MemberAccount) --查出需要的集合放到游標中OPEN My_Cursor --打開游標FETCH NEXT FROM My_Cursor --讀取第一行數(shù)據(jù)WHILE @@FETCH_STATUS = 0 BEGIN --UPDATE dbo.MemberAccount SET UserName = UserName "A" WHERE CURRENT OF My_Cursor --更新 --DELETE FROM dbo.MemberAccount WHERE CURRENT OF My_Cursor --刪除 FETCH NEXT FROM My_Cursor --讀取下一行數(shù)據(jù) ENDCLOSE My_Cursor --關(guān)閉游標DEALLOCATE My_Cursor --釋放游標GO
sql2000查詢語句怎么寫可能有循環(huán)或游標?
寫一個例子給樓主看下就知道了:
在sqlserver2000中新建一個存儲過程: CREATE PROCEDURE PK_Test AS //聲明1個變量 declare @name nvarchar(20) //聲明一個游標mycursor,select語句中參數(shù)的個數(shù)必須要和從游標取出的變量名相同 declare mycursor cursor for select name from student //打開游標 open mycursor //從游標里取出數(shù)據(jù)賦值到我們剛才聲明的2個變量中 fetch next from mycursor into @name //判斷游標的狀態(tài) //0 fetch語句成功 //-1 fetch語句失敗或此行不在結(jié)果集中 //-2被提取的行不存在 while (@@fetch_status=0) begin //顯示出我們每次用游標取出的值 print "游標成功取出一條數(shù)據(jù)" print @name //用游標去取下一條記錄 fetch next from mycursor into @name end //關(guān)閉游標 close mycursor //撤銷游標 deallocate mycursor GO