摘 要:數據庫訪問技術是計算機編程應用中十分重要的技術,文章主要介紹了編程中常用的DAO、ODBC API、RDO和ADO等技術的特點,并重點介紹了當前作為主流應用技術的ADO。
關鍵詞:數據庫訪問技術;VB;ADO
1 概述
VB即Visual Basic,具有強大的數據庫操作功能,實現對數據的有效處理,已經成為普遍運用的可視化編程工具,并且隨著Visual Basic軟件版本的不斷升級,數據庫的功能不斷得以提升和豐富,更多的數據庫訪問功能被附加到VB上,進而使得VB在開發數據庫應用程序方面的優勢更加彰顯。再加上,信息技術的飛速發展,人們對利用網絡進行信息的交流和溝通的要求越來越高,這就使得開發出功能更加完善、運行速度更快、應用范圍更加廣泛、占用資源更少的數據庫應用程序成為當今時代和形勢下的亟需解決的重要問題。而VB可以向廣大的用戶提供不同功能和用途的數據控件,同時,VB為了更加豐富其功能的應用,提高實用性,設立了不同類型的數據庫,主要包括本地數據庫、外地數據庫和遠程數據庫,并幫助用戶使用極少的編寫代碼甚至不編寫代碼即可實現數據庫的各種操作。
2 VB中的數據庫訪問技術
VB為方便廣大的用戶,設計了多種方式的訪問途徑,提供了強大的數據庫訪問技術,進而實現與當前多數常用和流行的數據庫的連接。當前主要通過引擎、開放式數據庫連接驅動程序及OLE DB等形式實現與不同數據庫之間的連接。在開發背景和環境下,VB提供的數據庫訪問技術主要包括DAO、ODBC API、RDO、ADO,其中ADO具有簡單容易操作、靈活普遍適用等特點進而成為當前VB中的主流數據庫訪問技術。下面將會詳細介紹這幾種技術,并對ADO技術進行重點介紹。
2.1 DAO技術
DAO即數據訪問對象,該數據庫訪問技術基于PC平臺進行數據的交換,可以實現對數據庫中所有內容的訪問、操縱和編輯,作為首個面對對象的數據庫訪問編程接口,已經成為VB數據庫訪問的默認方式。該技術和方式主要通過分層次的對象框架即DBEngine頂層對象和workspace及errors等,每一層次代表著一個數據對話框及本地或者遠程數據庫,十分靈活和適用。DAO訪問程序的編碼模型集合了設計關系數據庫系統結構中的所有類別對象,進而提供了系統所需的所有操作方法和屬性,而且編寫操作簡單,操作工具豐富,主要有創建數據庫、定義表、字段和索引、建立表間聯系、定位及數據查詢等工具來完善其訪問效果。但是進行非MDB文件格式的數據庫進行交換和通信時,需要利用jet或者ODBC Direct實現各地數據庫的訪問,這就表明DAO訪問技術具有自身的局限性,但是在單系統應用程序及小范圍的本地應用上效果更佳突出。
2.2 ODBC API技術
它是一種進行異種數據庫訪問的可移植性方式或技術,它存在于驅動管理器中,與數據資源對話的功用函數等保持著動態的連接,通過數據庫的開放,利用本身包含的豐富的函數集,為用戶提供通用的接口,并通過這些接口訪問各種后臺數據庫。總的來說,應用程序調動驅動管理器中的函數,而驅動管理器經由驅動器將函數及相關的數據呈現在服務器中。
2.3 RDO技術
即遠程數據對象訪問方式,提供給開放數據庫互連數據源的面向對象的接口,是在ODBC API基礎上的對象模型層,可以在客戶端和服務器之間進行數據訪問,為利用現代碼創建和操作遠程數據對象和集合提供框架,并依靠ODBC API、ODBC驅動程序及后端數據庫引擎實現自身的功能,但減少了jet數據庫的引擎,其中數據對象和集合間的關系代表著數據庫系統的邏輯結構。RDO源于DAO,但又有所不同,它可以繞過本地查詢而直接訪問相關的數據庫,還可以與ODBC API同時應用于編程中,因此,RDO兼備了DAO和ODBC API的技術特點的基礎上,編寫程序更加短小,連接和查詢的速度更加快,但是它無法保障對SQL Server和Oracle之外的數據庫的存取。盡管其存在局限性,然而RDO提供的用來訪問存儲過程和復雜結構的更多、更加復雜的對象、屬性和方法,使得其仍然成為大型關系數據庫應用和開發的主要手段和方式。
2.4 ADO技術
即ActiveX對象,是Microsoft公司面向對象開發數據庫應用程序而推出的新接口,可以為各種類型的數據之間的連接提供有效的機制,已經成為客戶/服務器和基于Web應用程序開發的首選,并成為了ASP技術訪問Web數據庫應用程序的核心技術。
首先,ADO采用Connecton、Recordest和Command三個主要對象為主的對象模型框架。其中,Connecton對象不僅可以實現對遠程數據庫和創建數據源的連接,進行事務范圍的控制外,還可以與Recordest或Command進行對象間的關聯;每個Recordest對象都包含著一個Field對象集,集合了所有從數據源返回的結果。它不僅可以創建自身對想要查看的數據源的連接,還可以使用并操作已經打開的Connecton對象,另外,它還可以完成對相關數據的查詢和修改;Command也可以使用并操作已經打開的Connecton對象以及完成對相關數據的查詢和修改,主要負責對參數化的SQL語句的命令的執行,也適用于SQL語句和返回結果集的SQL查詢。
其次,ADO作為DAO和RDO等技術的衍生和后繼產物,吸收并借鑒了之前數據庫訪問技術的多數優點。從對象模型層次上來看,ADO對象模型框架主要包含三個對象,與上述其他對象模型框架結構更加簡便。主要因為ADO將DAO和RDO眾多的屬性、對象和方法進行了優化的整合和創新。同時,ADO對LE DB技術揚長避短,并在此基礎上建立了面對對象高層數據庫訪問接口,并通過支持客戶/服務器和基于Web應用程序主要功能的建立來解決單一或者多客戶/服務器和Web應用程序及數據開發的各種問題。
最后,作為最新的數據庫訪問技術,ADO可以實現對SQL Server、Oracle等數據庫應用程序的使用,還可以完成對Excel表格、文本、圖形及無格式文件的處理,而且操作更加簡單、靈活,且減少了數據源層次和數據流量的使用量,大大提升了連接和訪問的速度及性能,進而使用范圍幾乎普及到各種各樣的應用程序,并為不同的數據源提供多機種環境的數據訪問。
3 結束語
隨著信息技術的不斷進步和完善,數據庫訪問應用于VB中的技術將會得到更大程度的發展,而作為最新的數據庫訪問技術的ADO較之其他應用技術具有更強的功能和性能,已經成為VB開發中的主流,值得業界進行更深層次的研究和探索。
參考文獻
[1]王素芳.VB中數據庫訪問技術的應用研究[J].科技視界,2014,12:55-56.
[2]曹風華.剖析VB中的數據庫訪問技術[J].內蒙古財經學院學報(綜合版),2010,6:123-125.
作者簡介:劉環(1970,11-),女,山西晉城人,漢族,碩士研究生,講師,長治醫學院計算機教學部,主要研究方向:計算機應用。