資源描述:
《基于VB的高級數(shù)據(jù)庫訪問技術_ADO》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、西南民族大學學報·自然科學版第37卷第3期May.2011___________________________________________________________________JournalofSouthwestUniversityforNationalities?NaturalScienceEdition文章編號:1003-2843(2011)03-0491-04基于VB的高級數(shù)據(jù)庫訪問技術——ADO陳建英,張楠,李濤(西南民族大學計算機科學與技術學院,四川成都610041)摘要:介紹并分析了高級數(shù)據(jù)庫訪問技術ADO的分層對象模型及應用系統(tǒng)體系結構,描
2、述了VB中使用ADO訪問數(shù)據(jù)庫的詳細步驟和語法,最后給出基于VB+SQLServer的ADO數(shù)據(jù)庫訪問實例.關鍵詞:數(shù)據(jù)庫訪問技術;VB;ADO數(shù)據(jù)控件;ADO對象中圖分類號:TP311.131文獻標志碼:Adoi:10.3969/j.issn.1003-2483.2011.05.29VB(VisualBasic)是Microsoft致力發(fā)展的Windows應用程序開發(fā)工具之一,簡單易學、方便靈活,具有強大的數(shù)據(jù)庫操作功能,通常作為數(shù)據(jù)庫應用系統(tǒng)前端開發(fā)工具.SQLServer是Microsoft推出的RDBMS(RelationalDatabaseManagement
3、System,關系數(shù)據(jù)庫管理系統(tǒng)),數(shù)據(jù)管理功能強大,具有高速、穩(wěn)定和安全等優(yōu)勢,在C/S和B/S模式中都得到了很好的應用.兩者相結合并采用ADO(ActiveXDataObject,ActiveX數(shù)據(jù)對象)數(shù)據(jù)庫訪問技術開發(fā)數(shù)據(jù)庫應用系統(tǒng)是一種較為合理的選擇.1ADO概述ADO是Microsoft開發(fā)的一種基于對象的數(shù)據(jù)訪問接口,是DAO(DataAccessObjects,數(shù)據(jù)訪問對象)和RDO(RemoteDataObjects,遠程數(shù)據(jù)對象)的后繼產物,集成了DAO和RDO的優(yōu)點,提供對OLEDB(ObjectsLinkandEmbeddingDatabase,
4、對象連接與嵌入數(shù)據(jù)庫)數(shù)據(jù)源的應用程序級訪問功能,具有使用方便、速度高、[1,2]內存支出低和磁盤空間占用少等優(yōu)勢.1.1基于ADO的應用系統(tǒng)體系結構由于OLEDB是一種統(tǒng)一、通用的底層數(shù)據(jù)源訪問接口,可以實現(xiàn)對任意數(shù)據(jù)源的高性能數(shù)據(jù)訪問,能夠[3]處理任何類型的數(shù)據(jù)而不必考慮數(shù)據(jù)的格式和存儲方法.因此,基于OLEDB的ADO可以訪問任何類型的數(shù)據(jù)源,相應的應用系統(tǒng)體系結構如圖1所示.應用程序ADOOLEDBProvider…RDBMSXMLTXT圖1基于ADO的應用系統(tǒng)體系結構___________________________收稿日期:2011-04-13作者簡介
5、:陳建英(1970-),女,副教授.基金項目:四川省應用基礎研究項目(2008JY0070-2);西南民族大學中央高校基本科研業(yè)務費專項(10NZYZJ04).___________________________________________________________________492西南民族大學學報·自然科學版第37卷1.2ADO的分層對象模型當前,大多基于C/S和B/S結構的開發(fā)技術都支持ADO,這使得不同的應用開發(fā)模式能夠統(tǒng)一到單一的ADO對象上來.ConnectionErrorsErrorPropertyPropertiesPropertyComm
6、andParametersParameterPropertyPropertiesPropertyRecordsetFieldsFieldPropertyPropertiesProperty圖2基于層次結構的ADO對象模型[4]ADO的對象模型具有明顯的層次結構,包含了如圖2所示的Connection、Command和Recordset三個主要對象和Errors、Parameters、Fields和Properties四個對象集合.Connection對象主要負責與數(shù)據(jù)源建立連接;Command對象主要用于設置訪問數(shù)據(jù)源所需的命令;Recordset對象主要用來存放從結果
7、集中取回的記錄;Error對象主要用來存放訪問數(shù)據(jù)源時所發(fā)生錯誤的信息;Parameter對象主要用來進行參數(shù)化查詢;Field對象對應[5]Recordset對象的一列;Property對象用于封裝每個對象的屬性.2VB中基于ADO的兩種數(shù)據(jù)庫訪問方式[6][7]VB6.0開發(fā)環(huán)境為連接數(shù)據(jù)源提供了三種方法:ADO數(shù)據(jù)控件、ADO對象和DataEnvironment設計器.本文基于MSSQLServer2000的個人版在本地建立數(shù)據(jù)庫“test”及其用戶數(shù)據(jù)表“user(namechar(10),pwdchar(10))”介紹前兩種AD