91精品人妻互换日韩精品久久影视|又粗又大的网站激情文学制服91|亚州A∨无码片中文字慕鲁丝片区|jizz中国无码91麻豆精品福利|午夜成人AA婷婷五月天精品|素人AV在线国产高清不卡片|尤物精品视频影院91日韩|亚洲精品18国产精品闷骚

您當(dāng)前位置:首頁 > 新聞?lì)l道 > 技術(shù)動(dòng)態(tài) > 正文
Visual綜述
摘 要 從VB數(shù)據(jù)庫體系結(jié)構(gòu)的角度探討了VB對數(shù)據(jù)庫的支持,并結(jié)合了一些代碼具體闡述了使用DAO(Data Access Object Variable)和RDO(Remote Data Control)兩種方法,實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)庫的訪問。
  關(guān)鍵詞 控件 數(shù)據(jù)庫 接口


  Visual Basic專業(yè)版是一種廣泛使用的數(shù)據(jù)庫編程語言,提供了對數(shù)據(jù)庫應(yīng)用的強(qiáng)大支持。VB訪問數(shù)據(jù)庫的方法大致有三類:使用數(shù)據(jù)綁定控件,使用數(shù)據(jù)庫存取對象變量(Data Access Object Vari?鄄able),直接調(diào)用ODBC 2.0 API接口函數(shù)。
1 VB的數(shù)據(jù)庫結(jié)構(gòu)
  VB數(shù)據(jù)庫的核心結(jié)構(gòu)是MicroSoft Jet數(shù)據(jù)庫引擎,JET引擎的作用是支持多種ISAM(Indexed Sequential Access Method,即索引順序存取方 法) 數(shù)據(jù)驅(qū)動(dòng)程序。VB環(huán)境下Access是缺省的數(shù)據(jù)格式,對于其他的關(guān)系型數(shù)據(jù)庫如Fox?鄄Pro、Dbase(或 Xbase)、Paradox、Btrieve等,VB的專業(yè)版可兼容其驅(qū)動(dòng)程序,這就使得VB能支持這些數(shù)據(jù)庫格式。由上可見,Ms JET引擎實(shí)質(zhì)上提供了:一個(gè)符合ANSI標(biāo)準(zhǔn)的語法分析器;為查詢結(jié)果集的使用而提供的內(nèi)存管理功能;同所支持的數(shù)據(jù)庫的外部接口;為應(yīng)用代碼提供的內(nèi)部接口。
2 VB訪問數(shù)據(jù)庫的原則和方法
2.1 VB訪問數(shù)據(jù)庫的原則
2.1.1 代碼的重用和運(yùn)行的效率
  VB程序設(shè)計(jì)中,應(yīng)盡可能減少代碼的重復(fù)編寫,提高運(yùn)行效率。例如:通過使用ODBC數(shù)據(jù)源連接數(shù)據(jù)庫的方法,可在變換多種數(shù)據(jù)庫類型的情況下,而不用頻繁修改代碼。用VBSQL通過DB-Library就做不到。而ODBC接口并不是VB訪問數(shù)據(jù)庫運(yùn)行效率最高的方法。同樣,同是使用ODBC接口的ADO的效率要高于RDO。
2.1.2 實(shí)現(xiàn)的簡便性,易維護(hù)性
  如果一種方法實(shí)現(xiàn)起來很復(fù)雜,工程的開發(fā)必然造成人力物力的浪費(fèi),同時(shí)這樣設(shè)計(jì)出來的應(yīng)用程序只會(huì)支持起來更復(fù)雜或維護(hù)時(shí)更困難。例如:本地需要 訪問ISAM 或Jet 類型數(shù)據(jù)源,那么就使用DAO/Jet,而沒有必要使用通過ODBC的方法。RDC實(shí)現(xiàn)起來要較RDO更容易。
2.1.3 安全原則
  這一條應(yīng)根據(jù)環(huán)境和條件決定。例如局域網(wǎng)的網(wǎng)絡(luò)安全性要好于廣域網(wǎng),因而可直接利用數(shù)據(jù)控件DC,這樣實(shí)現(xiàn)起來方便快捷,而廣域網(wǎng)需要大量的錯(cuò)誤捕獲,如用RDC就不如用RDO易控制錯(cuò)誤。
2.2 數(shù)據(jù)訪問接口功能及含義
  ADC(Advanced Data Connector):高級數(shù)據(jù)連接器, 提供綁定ADO數(shù)據(jù)源到窗體的數(shù)據(jù)綁定控件上。ADC主要是一種直接訪問或者通過ADO訪問遠(yuǎn)程OLE DB對象的一種技術(shù),它也支持主要應(yīng)用在微軟IE瀏覽器上的數(shù)據(jù)綁定控件。它是特地為Web上的瀏覽器為基礎(chǔ)的應(yīng)用程序而設(shè)計(jì)的。
  ADO(Active Data Objects):Active 數(shù)據(jù)對象,ADO實(shí)際是一種提供訪問各種數(shù)據(jù)類型的連接機(jī)制。ADO設(shè)計(jì)為一種極簡單的格式,通過ODBC的方法同數(shù)據(jù)庫接口?梢允 用任何一種ODBC數(shù)據(jù)源,即不止適合于SQL Server、Oracle、Access等數(shù)據(jù)庫應(yīng)用程序,也適合于Ex?鄄cel表格、 文本文件、 圖形文件和無格式的數(shù)據(jù)文件。ADO是基于OLE-DB 之 上的技術(shù),因此ADO通過其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù)訪問接口方法。
  DAO(Data Access Objects):數(shù)據(jù)訪問對象,是一種面向?qū)ο蟮慕缑娼涌凇Mㄟ^DAO/Jet 功能可以訪問ISAM 數(shù)據(jù)庫,使用DAO/ ODBC Direct功能可以實(shí)現(xiàn)遠(yuǎn)程RDO功能。使用DAO的程序編碼非常簡單,DAO提供豐富的游標(biāo)(Cursor)類型的結(jié)果集和非游標(biāo)(Cursor-Less)類型的結(jié)果集,同DDL( 數(shù)據(jù)描述語言)的功能很類似。 DAO模型是設(shè)計(jì)關(guān)系數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)的對象類的集合。它們提供了完成管理這樣一個(gè)系統(tǒng)所的全部操作的屬性和方法,包括創(chuàng)建數(shù)據(jù)庫,定義表、字段和索引,建立表間的關(guān)系,定位和查詢數(shù)據(jù)庫等工具。
  JET(Joint Engine Technology):數(shù)據(jù)連接性引擎技術(shù),是一種基于工作站通過DAO的數(shù)據(jù)庫訪問機(jī)制。雖然可以通過微軟Access提供的ODBC驅(qū)動(dòng)程序訪問Jet數(shù)據(jù)庫,但使用這些驅(qū)動(dòng)程序在功能上有所限制。Jet機(jī)制有自己的查詢和結(jié)果集處理功能,并可對同種或異種數(shù)據(jù)源作查詢處理。
  ODBC(Open Database Connectivity):開放式的數(shù)據(jù)庫連接,是一種公認(rèn)的關(guān)系數(shù)據(jù)源的接口界面。提供統(tǒng)一接口的界面,ODBC對任何數(shù)據(jù)源都未作優(yōu)化。
  ODBC Direct:是一種基于DAO對象的新的DAO模式, 其方法和屬性與RDO功能相同。使用在有DAO代碼存在的場合,可用來訪問遠(yuǎn)程數(shù)據(jù)源。
  OLE DB:是一種底層數(shù)據(jù)訪問界面接口。是用于第三方驅(qū)動(dòng)程序商家開發(fā)輸出數(shù)據(jù)源到ADO技術(shù)的應(yīng)用程序或用于C++的開發(fā)者開發(fā)定制的數(shù)據(jù)庫組件。OLE DB不能被VB 直接調(diào)用。


  RDC(Remote Data Control):遠(yuǎn)程數(shù)據(jù)訪問控件,是一種對RDO 數(shù)據(jù)綁定的控件?梢暂敵鎏囟ǖ慕Y(jié)果集到數(shù)據(jù)源控件。
  RDO(Remote Data Objects):遠(yuǎn)程數(shù)據(jù)對象,遠(yuǎn)程數(shù)據(jù)對象和集合為使用代碼來創(chuàng)建和操作一個(gè)遠(yuǎn)程ODBC 數(shù)據(jù)庫系統(tǒng)的各個(gè)部件提供了一個(gè)框架。對象和集合都具有描述數(shù)據(jù)庫的各個(gè)部件特征的屬性以及用來操作這些部件的方法?梢栽趯ο蠛图现g建立起關(guān)系,這些關(guān)系就代表了數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)。RDO是ODBC API的一個(gè)淺層界面接口。是專為訪問遠(yuǎn)程ODBC 關(guān)系數(shù)據(jù)源而設(shè)計(jì)的。
  VBSQL:是Visual Basic 結(jié)構(gòu)化查詢語言。 是一種基于API 的接口方法, 幾乎與C 的DB-Library API 相同,VBSQL 只支持微軟的SQL Server。VBSQL 快而且輕但不支持對象界面。
2.3 VB訪問數(shù)據(jù)庫的方法
  VB訪問數(shù)據(jù)庫的方法很多,一般情況下分成三大類,而每一類又有很多方法。下面列出每一類,及每一類包含的方法。
2.3.1 數(shù)據(jù)控件法
  數(shù)據(jù)庫綁定的控件來實(shí)現(xiàn)數(shù)據(jù)的輸入、顯示、篩選等接口界面。表1列舉了VB支持的多種數(shù)據(jù)源訪問控件,在VB和COM界面接口之間起著媒介作用。這些控件提供了一種減少代碼實(shí)現(xiàn)數(shù)據(jù)訪問的途徑。程序員可以使用同樣的對象、屬性和方法來處理各種不同的數(shù)據(jù)庫格式。也可從一種數(shù)據(jù)庫格式變到另一種格式(例如,將本地的Mi?鄄crosoft Access數(shù)據(jù)庫轉(zhuǎn)換為網(wǎng)絡(luò)上的SQL Server數(shù)據(jù)庫),也可在單一的查詢或報(bào)表中連接來自多個(gè)不同數(shù)據(jù)庫的表。
2.3.2 數(shù)據(jù)庫存取對象變量(Data Access Object Variable)
  表2列舉了使用DAO訪問數(shù)據(jù)庫的對象和方法。
2.3.3 數(shù)據(jù)接口法
  表3列出了目前在VB6中有效的數(shù)據(jù)訪問接口方法,有些是簡單的應(yīng)用程序接口界面(APIs),有些是組件對象模型界面(COM)。這兩類數(shù)據(jù)庫接口界面事實(shí)上在任何一種開發(fā)語言中都包括。
3 總結(jié)
  近來隨著Web應(yīng)用軟件的迅速發(fā)展和現(xiàn)有數(shù)據(jù)存儲(chǔ)形式的多種多樣,Visual Basic訪問數(shù)據(jù)庫的解決方案面臨諸多挑戰(zhàn)。為此Microsoft 提出一種新的數(shù)據(jù)庫訪問策略,即“統(tǒng)一數(shù)據(jù)訪問”(Universal Data Access)的策略!敖y(tǒng)一數(shù)據(jù)訪問”提供了高性能的存取包括關(guān)系型和非關(guān)系型在內(nèi)的多種數(shù)據(jù)源,提供獨(dú)立于開發(fā)工具和開發(fā)語言的簡單的編程接口,這些技術(shù)使得企業(yè)集成多種數(shù)據(jù)源、選擇更好的開發(fā)工具、應(yīng)用軟件、操作平臺、建立容易維護(hù)的解決方案成為可能!敖y(tǒng)一數(shù)據(jù)訪問”(Universal Data Access)的基礎(chǔ)是Mi?鄄crosoft 的數(shù)據(jù)訪問組件。這些組件包括ActiveX Data Objects(ADO)、Remote Data Service(RDS,也稱“高級數(shù)據(jù)連接器”或ADC)、OLE DB和ODBC?傊赩B中訪問數(shù)據(jù)庫的方法很多,根據(jù)具體的環(huán)境、條件、要求而采用適當(dāng)?shù)姆桨浮?br> 參考文獻(xiàn)
1 冷向君.Visual Basic 中文版入門與提高[M].北京:清華大學(xué)出版社,1998
2 李昭原,羅曉沛.?dāng)?shù)據(jù)庫技術(shù)新進(jìn)展[M].北京:清華大學(xué)出版社,1997
3 Steven Holzner.Visual Basic 6.0技術(shù)內(nèi)幕[M].北京:機(jī)械工業(yè)出版社,1997
4 Jiawei Han,Miccheline Kamber.數(shù)據(jù)挖掘概念與技術(shù)[M].北京:機(jī)械工業(yè)出版社
5 曾強(qiáng)聰,趙歆,楊莉.Visual Basic 6.0 程序設(shè)計(jì)教程[M].中國水利水電出版社,1999
關(guān)鍵字:通訊,北京
About Us - 關(guān)于我們 - 服務(wù)列表 - 付費(fèi)指導(dǎo) - 媒體合作 - 廣告服務(wù) - 版權(quán)聲明 - 聯(lián)系我們 - 網(wǎng)站地圖 - 常見問題 - 友情鏈接
Copyright©2014安裝信息網(wǎng) m.78375555.com. All rights reserved.
服務(wù)熱線:4000-293-296 聯(lián)系電話:0371-61311617 傳真:0371-55611201 QQ: 郵箱:zgazxxw@126.com 豫ICP備18030500號-4
未經(jīng)過本站允許,請勿將本站內(nèi)容傳播或復(fù)制
安全聯(lián)盟認(rèn)證