亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

ADO 光 標 基 礎 (1)  

2019-11-18 22:13:58
字體:
來源:轉載
供稿:網友
1. 什幺是光標?

光標,也有人稱為游標。概括的講,它是基于記錄的。

過去,關系型數據庫沒有象現在這樣被廣泛的應用。那時候,人們大多使用 dBase 這樣的小型數據庫軟件。這類數據庫確切的說應為數據文件管理軟件。他們是面向記錄的。

不過,這種方式也許更符合人們的習慣。比如,我們在電話本中查找號碼,在學生檔案中查找檔案,最終都要歸結于其中的一個號碼,一個檔案,那就是一條記錄?,F實生活中,我們在一張表格中尋找某一項時,可能會用手一條一條逐行的掃過,以幫助我們找到所需的那條記錄。對應于數據庫來說,這就是光標的模型。所以,你可以這樣想象:表格是數據庫中的表,而我們的手好比是光標。

所以,當你使用類似 .MoveNext,.MoveLast 這樣的語句時,覺得再自然不過了。

現在,你明白什幺是光標了吧。光標就是數據的 ' 定位系統 ' 。

這個 ' 定位系統 ' 粗分有兩種:服務器光標和客戶光標。對應于 ADO 中的 CursorLocation 。舉例來說:

Set rs = Server.CreateObject("ADODB.RecordSet")
rs.CursorLocation = adUseServer      '缺省,使用服務器光標
.....
rs.CursorLocation = adUseClient      '使用客戶光標

2. 什幺是服務器光標?

或者稱為 API 服務器光標。

假設你要查詢有關編程語言的書,寫成 SQL 語句就是:SELECT book_id,book_title FROM books WHERE book_catalog = '編程' ORDER BY book_title,同時你指定使用服務器光標。

這條語句發送到服務器,服務器對數據進行檢索,將符合查詢條件的記錄集合放入臨時表(對某些光標類型是這樣)中。每當你進行 .MoveNext 操作,服務器就會發送一條記錄到客戶端的緩沖區,然后你才可以使用它。

3. 什幺是 CacheSize ?

繼續上面的例子,假設符合查詢條件的記錄有100個,也就是說,用 .MoveNext 這種方法遍歷該結果集需要同服務器交互100次。我們可以通過設置 CacheSize 使客戶與服務器的通信變少。上面的例子其實就是 CacheSize=1 的情況,這是缺省值。

假設 CacheSize=4,當 RecordSet 對象打開時,服務器發送4條記錄到客戶端。前4次的 .MoveNext 操作實際上是在客戶緩沖區中得到數據,當第5次 .Movenext 時,服務器才發送下一個4條記錄。由此,減少了客戶與服務器間的網絡通信。

那幺是不是說 CacheSize 越大越好呢?千萬不要想當然。萬事都有兩面性,CacheSize 也一樣??蛻舳苏埱髷祿?,服務器發送數據,這個過程有點象交通管理。CacheSize 過高,會阻塞交通,甚至引起數據丟失(比如當 Cachesize 大于客戶端緩沖區時)。對于不同的應用,所取的值也不同。

另外要指出的是,使用任何形式的光標都不是最有效的訪問數據的方法,Cachesize 有的時候并不是瓶頸,盡量將使用光標的程序轉換為面向結果集的程序,性能會提高很多。

3. 什幺是客戶光標?

既然光標是數據的 ' 定位系統 ',那幺在客戶端也可以完成。

客戶光標的產生由來已久,當初是為了彌補服務器的不足(有些數據庫引擎就不支持光標)。隨著服務器光標的出現,客戶光標似乎已經過時了,不過還是那句話:萬事都有兩面性,在 internet 上,與數據庫的連接并不是永久的,使用客戶光標能使我們獲得同使用服務器光標一樣的功能。

當 CursorLoction 屬性設成 adUseClient 時,微軟的光標服務( Cursor Service )創建 RecordSet 對象,用前向 / 只讀的光標方式從服務器將所有查詢結果檢索出來,并且存儲在客戶緩沖區中。當應用程序通過 ADO 請求數據時,光標服務就從客戶緩沖區中檢取數據。這種方式在連接遠程服務器時非常有用,它會提高應用程序的性能。如果你訪問的數據庫是 Jet 數據庫( access ),而且在本地,那么用客戶光標非但不提高性能,還會使性能下降。這時候,數據將被緩存兩次,數據庫一次,光標服務一次。

如果考慮應用的功能,客戶光標功能是很完善的,它能支持某些數據庫不能完成的操作( 視數據庫的情況而定 )。

4. 什幺是 DisConnected RecordSet ?

我們使用了客戶光標,就可以斷開與數據庫的連接,釋放 Connection 對象。這樣的結果集就是 DisConnected RecordSet。舉例說明:

Dim c As New ADODB.Connection
Dim r As New ADODB.Recordset
On Error GoTo handler
   
c.ConnectionString = connectStr
c.CursorLocation = adUseClient
c.Open
Set r.ActiveConnection = c
r.Open SqlText, , adOpenKeyset, adLockBatchOptimistic, -1
Set r.ActiveConnection = Nothing   ' This disconnects the recordset.
c.Close
Set c = Nothing
......
......   
' Recordset is now in disconnected state; do something with it.
r.Close
Set r = Nothing
......




發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av电影免费观看高清| 亚洲国产欧美一区二区三区同亚洲| 欧美成人sm免费视频| 亚洲bt欧美bt日本bt| 亚洲精品国产精品国自产在线| 97激碰免费视频| 国产精品久久久久久久久久久不卡| 国产精品露脸av在线| 日韩精品视频三区| 亚洲精品美女视频| 欧美性高跟鞋xxxxhd| 26uuu亚洲伊人春色| 精品国产31久久久久久| 不用播放器成人网| 91精品国产综合久久久久久久久| 96精品视频在线| 国产z一区二区三区| 日韩欧美在线视频日韩欧美在线视频| 亚洲精品国产美女| 国产精品永久免费| 国产精品欧美亚洲777777| 国产日韩欧美视频在线| 97精品国产97久久久久久免费| 精品国产一区二区在线| 欧美亚洲第一页| 亚洲一区二区国产| 亚洲老板91色精品久久| 国产精品天天狠天天看| 日韩中文字幕av| 国产999在线| 九色精品免费永久在线| 亚洲女同精品视频| 97香蕉超级碰碰久久免费的优势| 美日韩精品免费观看视频| 亚洲国产精品大全| 欧美午夜片欧美片在线观看| 亚洲天堂av图片| 92福利视频午夜1000合集在线观看| 2019中文字幕在线免费观看| 亚洲精品福利视频| 国产精品久久久久久久天堂| 欧美精品免费看| 亚洲黄在线观看| 久久99视频免费| 亚洲成人av在线播放| 中文字幕在线成人| 久久综合电影一区| 高清欧美性猛交xxxx| 亚洲三级黄色在线观看| 日韩亚洲欧美成人| 久久久久国产精品一区| 久久久精品亚洲| 国产精品中文字幕在线观看| 国产欧美精品一区二区三区-老狼| 91国产视频在线播放| 日本19禁啪啪免费观看www| 亚洲色图第三页| 久久资源免费视频| 国产精品一区二区三区在线播放| 麻豆一区二区在线观看| 日日噜噜噜夜夜爽亚洲精品| 日本国产欧美一区二区三区| 亚洲直播在线一区| 另类美女黄大片| 中文字幕欧美日韩| 中文字幕在线观看日韩| 成人写真视频福利网| 777国产偷窥盗摄精品视频| 亚洲精品按摩视频| 91色琪琪电影亚洲精品久久| 成人激情视频在线观看| 亚洲自拍小视频| 91国语精品自产拍在线观看性色| 韩国一区二区电影| 久久久午夜视频| 中文字幕精品在线| 中文字幕日韩电影| 一区二区三区美女xx视频| 992tv成人免费影院| 亚洲高清av在线| 国产精品欧美日韩一区二区| 久久久av电影| 欧洲午夜精品久久久| 最近2019好看的中文字幕免费| 91精品国产高清自在线| 日韩风俗一区 二区| 国产日韩精品在线播放| 日韩va亚洲va欧洲va国产| 亚洲欧洲国产伦综合| 欧美在线视频播放| 欧美日韩亚洲91| 国产一区二区三区直播精品电影| 国产原创欧美精品| 久久综合伊人77777蜜臀| 日韩精品极品视频免费观看| 国产精品入口日韩视频大尺度| 播播国产欧美激情| 91sao在线观看国产| 国内偷自视频区视频综合| 欧美韩日一区二区| 亚洲第一中文字幕| 亚洲精品电影网| 国产精品av网站| 欧美性感美女h网站在线观看免费| 国产精品欧美风情| 欧美日韩国产精品专区| 亚洲色图日韩av| 国产91久久婷婷一区二区| 国产不卡一区二区在线播放| 成人羞羞国产免费| 欧美日韩在线观看视频小说| 97国产成人精品视频| 欧美不卡视频一区发布| 久久久极品av| 久久久国产一区二区| 亚洲天堂av在线免费| 午夜精品在线视频| 欧美亚州一区二区三区| 国产精品爱久久久久久久| 亚洲自拍小视频免费观看| 欧美激情第三页| 国产精品∨欧美精品v日韩精品| 亚洲精品乱码久久久久久按摩观| 国产精品十八以下禁看| 亚洲va电影大全| 欧美激情欧美激情在线五月| 91在线免费网站| 欧美大成色www永久网站婷| 97精品国产97久久久久久| 91在线中文字幕| 最近日韩中文字幕中文| 午夜精品国产精品大乳美女| 欧美精品videos| 久久99精品国产99久久6尤物| 亚洲tv在线观看| 中文字幕国产亚洲2019| 欧美激情乱人伦| 日韩欧美精品免费在线| 亚洲色图偷窥自拍| 国产成人一区二区在线| 国产精品美女免费视频| 国产91在线播放九色快色| 中文字幕成人在线| 北条麻妃久久精品| 色爱av美腿丝袜综合粉嫩av| 性欧美亚洲xxxx乳在线观看| 韩国v欧美v日本v亚洲| 在线播放日韩专区| 亚洲免费成人av电影| 欧美精品免费在线| 日韩黄色av网站| 亚洲夜晚福利在线观看| 高清在线视频日韩欧美| 国产精品久久久精品| 2025国产精品视频| 美日韩精品免费观看视频| 精品成人av一区| 中文字幕九色91在线| 国产精品日韩在线一区| 亚洲人免费视频| 91精品国产自产在线| 欧美高清视频在线播放| 欧美日韩精品在线视频| 日韩免费电影在线观看|