日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

游标的作用

發布時間:2025/3/19 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 游标的作用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>

???
????? 關系數據庫中的操作會對整個行集產生影響。由?????? SELECT?????? 語句返回的行集包括所有滿足該語句?????? WHERE?????? 子句中條件的行。由語句所返回的這一完整的行集被稱為結果集。應用程序,特別是交互式聯機應用程序,并不總能將整個結果集作為一個單元來有效地處理。這些應用程序需要一種機制以便每次處理一行或一部分行。游標就是提供這種機制的結果集擴展。???
????
????? 游標通過以下方式擴展結果處理:?????
????
????? 允許定位在結果集的特定行。???
????
????
????? 從結果集的當前位置檢索一行或多行。???
????
????
????? 支持對結果集中當前位置的行進行數據修改。???
????
????
????? 為由其他用戶對顯示在結果集中的數據庫數據所做的更改提供不同級別的可見性支持。???
????
????
????? 提供腳本、存儲過程和觸發器中使用的訪問結果集中的數據的?????? Transact-SQL?????? 語句。?????
????? 請求游標???
????? Microsoft&reg;?????? SQL?????? Server&#8482;?????? 2000?????? 支持兩種請求游標的方法:?????
????
????? Transact-SQL?????
????? 對根據?????? SQL-92?????? 游標語法制定的游標,Transact-SQL?????? 語言支持使用它們的語法。???
????
????? 數據庫應用程序編程接口(API)游標函數?????
????? SQL?????? Server?????? 支持這些數據庫?????? API?????? 的游標功能:???
????
????? ADO(Microsoft?????? ActiveX&reg;?????? 數據對象)???
????
????
????? OLE?????? DB???
????
????
????? ODBC(開放式數據庫連接)???
????
????
????? DB-Library?????
????? 應用程序不能混合使用這兩種請求游標的方法。已經使用?????? API?????? 指定游標行為的應用程序不能再執行?????? Transact-SQL?????? DECLARE?????? CURSOR?????? 語句請求一個?????? Transact-SQL?????? 游標。只有在將所有?????? API?????? 游標特性均設回默認值后,應用程序才可以執行?????? DECLARE?????? CURSOR。???
????
????? 如果?????? Transact-SQL?????? 和?????? API?????? 游標均未被請求,則默認情況下?????? SQL?????? Server?????? 將一個完整的結果集返回給應用程序,這個結果集稱為默認結果集。???
????
????? 游標進程???
????? Transact-SQL?????? 游標和?????? API?????? 游標有不同的語法,但下列一般進程可用于所有?????? SQL?????? Server?????? 游標:?????
????
????? 把游標與?????? Transact-SQL?????? 語句的結果集相關聯,并且定義游標的特征,如是否能夠更新游標中的行。???
????
????
????? 執行?????? Transact-SQL?????? 語句以填充游標。???
????
????
????? 檢索想要查看的游標中的行。從游標中檢索一行或多行的操作稱為提取。執行一系列的提取操作以向前或向后檢索行的操作稱為滾動。???
????
????
????? 根據需要,對游標中當前位置的行執行修改操作(更新或刪除)。???
????
????
????? 關閉游標。?????

簡單的說,跟C語言里的指針相識???
????? 可以隨意移動到需要的行

例:
DECLARE cursor_name CURSOR
[ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]
[ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]
[ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]
[ TYPE_WARNING ]
FOR select_statement
[ FOR UPDATE [ OF column_name [ ,...n ] ] ]

打開該游標時所生成的結果集包括 pubs 數據庫的 authors 表中的所有行和列。可以更新該游標,對該游標所做的所有更新和刪除均在提取中表現出來。因為沒指定 SCROLL 選項,FETCH NEXT 是唯一可用的提取選項。
DECLARE authors_cursor CURSOR
???? FOR SELECT * FROM authors
OPEN authors_cursor
FETCH NEXT FROM authors_cursor

牽套游標
declare????? cursor????? Cursor_Name????? for?????
???? Select????? *????? from????? table_Name????? (for????? read????? only)???
???? fetch????? cursor_Name????? to????? variable_Name?????
???? ;???
???? ;???
???? ;????
注:fetch????? 從 Transact-SQL 服務器游標中檢索特定的一行。
??

#數據庫技術

總結

以上是生活随笔為你收集整理的游标的作用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。