




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB中使用ADO对象模型编程访问数据库樊 继(平顶山工业职业技术学院,河南 平顶山 467001 )Usage of ADO object model programme interview database in Visual BasicFANJI (Pingdingshan Industrial College of Technology, henan 467001 , China)摘 要:本文介绍了几种Visual Basic中访问数据库方法,主要是使用ADO访问数据库的方法,通过一个简单的使用ADO访问ACCESS数据库实例示范如何使用ADO访问数据库,并对ADO可编程的对象集合进行了分析。关键字:数据库访问方式;ADO;Command对象;Connection对象;Recordset对象中图分类号: 文献标识码:Abstract:This text introduced same methods of the interview database in Visual Basics, mainly the method that uses the ADO interview database, pass a solid example of a simple usage that ADO interview ACCESS database show the demonstration that use the ADO interview database, and get the programmable object gathered of ADO to carry on analysis.Key words:the database interview method; ADO; command object; connection object; recordset object在VB的开发环境中,可以使用三种数据库访问方式,它们分别是:数据访问对象(DAO)、远程数据对象(RDO)和ADO对象模型。ADO作为最新的数据库访问模式,具有易于使用、访问灵活、应用广泛的特点.。它比RDO和DAO更加简单、更加灵活的对象模型。对于新工程,应该使用ADO作为数据访问接口。本文重点介绍ADO访问数据库的具体实现。1 三种数据库访问方式1.1 DAO(Data Access Objects)数据访问对象DAO一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBC Direct功能可以实现远程RDO功能。使用DAO的程序编码非常简单,DAO提供丰富的游标(Cursor)类型的结果集和非游标(Cursor-Less)类型的结果集,同DDL(数据描述语言)的功能很类似。DAO可通过ODBC像直接连接到其它数据库一样,直接连接到Access数据库。DAO最适用于单系统应用程序或小范围本地分布使用。DAO模型是设计关系数据库系统结构的对象类的集合。它们提供了完成管理这样一个系统所需的全部操作的属性和方法,包括创建数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等工具。1.2 RDO(Remote Data Objects)远程数据对象RDO是一个到ODBC的、面向对象的数据访问接口,它同易于使用的DAO style组合在一起,提供了一个接口,形式上展示出所有ODBC的底层功能和灵活性。尽管RDO在很好地访问Jet或ISAM数据库方面受到限制,而且它只能通过现存的ODBC驱动程序来访问关系数据库。但是,RDO已被证明是许多SQL Server、Oracle 以及其他大型关系数据库开发者经常选用的最佳接口。RDO提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性,以及方法。和DAO一样,在VB中也把其封装为RDO控件了,其使用方法与DAO控件的使用方法完全一样。1.3 ADO(Active Data Objects)Active数据对象ADO是一项新的数据库的存取技术,可以访问任何种类数据源的数据访问接口。通过ADO来可引用包括SQL Server、Oracle、ACCESS 等数据库、甚至EXCEL表格、文本文件、图形文件和无格式的数据文件在内的任何一种OLE DB数据源。ADO涉及的数据存储有DSN(数据源名称)、ODBC(开放式数据连接)以及OLE DB三种方式。ADO技术为连接数据源提供了三种方法:ADO数据控件、Data environment designer 和代码中定义的对象。本例重收稿日期: ;修订日期:作者简介:樊继(1961)女,汉,,河南,平顶山工业职业技术学院计算机系网络教研室。讲师。硕士在读主要从事网络数据库等教学点介绍在代码中定义对象的方法。2 ADO可编程对象集合(ADO对象模型)使用ADO对象模型编程首先必须在工程中添加对ADO库的引用。在你的工程/引用中选择Microsoft ActiveX Data Objects 2.6 Library。2.1 Connection 对象包含关于某个数据提供程序的信息。并且包含了关于结构描述的信息。它还包含某些 RDOEnvironment 对象的功能,例如transaction 控件。Connection对象用于建立与数据库的连接,通过连接可从应用程序访问数据源。它保存诸如指针类型、连接字符串、查询超时、连接超时和缺省数据库这样的连接信息。2.2 Error对象包含数据提供程序出错时的扩展信息。2.3 Property对象包含某个 ADO 对象的提供程序定义的特征。2.4 Command 对象包含关于某个命令,例如查询字符串、参数定义等的信息。在建立Connection后,可以发出命令操作数据源。一般情况下Command对象可以在数据库中添加、删除或更新数据,或者在表中进行数据查询。Command对象在定义查询参数或执行一个有输出参数的存储过程时非常有用。2.5 Parameter 对象包含参数化的Command对象的某单个参数的信息。该 Command对象有一个包含其所有Parameter 对象的 Parameters 集合。2.6 Recordset对象用来存储数据操作返回的记录集。Recordset对象只代表一个记录集,这个记录集是一个连接的数据库中的表,或者是Command对象的执行结果返回的记录集。在ADO对象模型中,是在行中检查和修改数据的最主要的方法,所有对数据的操作几乎都是在Recordset对象中完成的。Record对象用于指定行、移动行、添加、更改、删除记录。2.7 Field 对象包含记录集中数据的某单个列的信息。掌握其中的:Command、Connection、Recordset对象就可以实现基本的数据库操作。3 使用ADO访问数据库的具体步骤3.1 连接数据源利用Connection对象的Open方法可以创建一个数据源的连接。 语法:Connection对象.Open ConnectionString, UserID, PassWord, OpenOptions 其中:Connection对象为你定义的Connection对象的实例; ConnectionString为可选项,包含了连接的数据库的信息; UserID 可选项,包含建立连接的用户名; PassWord为可选项,包含建立连接的用户密码; OpenOptions为可选项,假如设置为adConnectAsync,则连接将异步打开。3.2打开记录集对象 实际上记录集返回的是一个从数据库取回的查询结果集。因此他有两种打开方法:一种使用记录集的Open方法,另一种是用Connection对象的Execute方法。3.2.1 记录集的Open方法 语法:Recordset.Open Source, ActiveConnection, CursorType, LockType, Options 其中:Recordset为所定义的记录集对象的实例。 Source可选项,指明了所打开的记录源信息。可以是合法的命令、对象变量名、SQL语句、表名、存储过程调用或保存记录集的文件名。 ActiveConnection可选项,合法的已打开的Connection对象的变量名或者是包含ConnectionString参数的字符串。 CursorType可选项,确定打开记录集对象使用的指针类型。 LockType可选项, 确定打开记录集对象使用的锁定类型。3.2.2 Connection对象的Execute方法 语法:Set recordset=Connection.Execute(CommandText,RecordsAffected,Options) 其中: CommandText 一个字符串,返回要执行的SQL命令、表名、存储过程或指定文本。 RecordsAffected 可选项,Long类型的值,返回操作影响的记录数。Options 可选项,Long类型值,指明如何处理CommandText参数。 打开了recordset对象之后,我们就可以使用它的addnew、delete、update、movenext、find等方法了。3.3 使用记录集3.3.1添加新记录的AddNew方法语法:Recordset.AddNew FieldList, Values 其中:Recordset为记录集对象实例 FieldList为一个字段名,或者是一个字段数组。 Values为给要加信息的字段赋的值,如果FiledList为一个字段名,那么Values应为一个单个的数值。假如FiledList为一个字段数组,那么Values必须也为一个个数,类型与FieldList相同的数组。 使用AddNew方法为记录集添加新的记录后,应使用UpDate将所添加的的数据存储在数据库中。3.3.2修改记录集 用SQL语句将要修改的字段的一个数据找出来重新赋值。3.3.3 删除记录的Delete方法 这与DAO对象的方法相同,但是在ADO中它的能力增强了,可以删掉一组记录了. 语法:Recordset.Delete AffectRecords其中:AffectRecords参数是确定Delete方法作用的方式的。它的取值如下: adAffectCurrent 只删除当前的记录。 adAffectGroup 删除符合Filter属性设置的那些记录。为了一次能删除一组数据,应设置Filter属性。3.3.4 查询记录 在ADO中查询的方法很灵活,有几种查询的方法。 使用连接对象的Execute方法执行SQL命令,返回查询记录集。 使用Command对象的Execute方法执行CommandText属性中设置的SQL命令,返回查询记录集。 Command对象的Execute方法的语法: Command.Execute RecordsAffected, Parameters, Options 不返回记录集 Set Rscordset=cmmnad.Execute(RecordsAffected,Parameters,Options)返回记录集 CommandText的语法:Command.CommandText=stringvariable 其中: stringvariable为字符串变量,包含SQL语句、表名或存储过程。3.4 断开连接 在应用程序结束之前,应该释放分配给ADO对象的资源,操作系统回收这些资源并可以再分配给其他应用程序. 使用的方法为:Close方法。 语法: Object.Close Object为ADO对象4 使用ADO访问ACCESS数据库实例以数据库“学生.mdb ”中的“学籍”表为基础,设计简单的学生学籍管理程序。4.1 在进行ADO对象的定义与设置,前必须在工程中引用ADO对象工程菜单中的引用:Microsoft ActiveX Data Objects 2.6 Library4.2 定义ADO对象在通用中声明:Dim Xueji As ADODB.Connection Xueji为连接对象 Dim rstXueji As ADODB.Recordset rstXueji为记录集对象 Dim cmmXueji As ADODB.Command cmmXueji为命令对象在Load事件中的代码Private Sub Form_Load()Set Xueji = New ADODB.Connection 设置连接对象实例Xueji.CursorLocation = adUseClient打开数据源连接Xueji.Open provider=Microsoft.Jet.OLEDB.4.0;Data Source=学生.mdb设置记录集对象实例Set rstXueji = New ADODB.RecordsetSet rstXueji.ActiveConnection = Xueji打开记录集rstXueji.Open select * from 学籍, Xueji, adOpenStatic, adLockOptimistic设置命令对象实例Set cmmXueji = New ADODB.CommandSet cmmXueji.ActiveConnection = XuejiEnd Sub4.3 界面设计如图1所示图1学籍管理系统界面4.4 代码设计Private Sub Command1_Click() 在表尾添加空白记录 rstXueji.MoveLast 记录集中的移动方法,指针移动到记录集的末尾 rstXueji.AddNew 添加新的记录Text1 = : Text2 = : Text3 = : Text4 = : Text5 = :Text1.SetFocusEnd SubPrivate Sub Command2_Click() 更新当前记录If Text1.= Or Text2. = Or Text3. = Or Text4 = Or Text5 = Then MsgBox 信息输入不完整,请输入完整, vbOKOnly + vbExclamation, 提示 ElserstXueji!学号 = Text1rstXueji!姓名 = Text2 rstXueji!性别 = Text3 rstXueji!出生日期 = CDate(Text4)rstXueji!家庭住址 = Text5rstXueji.Update 将上面所有的信息存储到数据库中End IfEnd SubPrivate Sub Command3_Click() 按姓名删除Dim NAME As StringNAME = InputBox(请输入姓名) rstXueji.MoveFirst rstXueji.Find (姓名=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 紧急医疗急救包行业跨境出海项目商业计划书
- 系外行星凌星观测仪行业跨境出海项目商业计划书
- 缓解压力薰衣草香薰食品企业制定与实施新质生产力项目商业计划书
- 肘关节稳定康复器行业跨境出海项目商业计划书
- 幼儿园健康监护台账模板
- 住院患者防跌倒坠床管理考核试题及答案
- 2025年天津市专业技术人员继续教育考试试题及答案
- 河南省驻马店市西平县西平县宋集中学2025-2026学年七年级上学期9月月考生物(含答案)
- 小学语文课本剧剧本创作技巧
- 2025年高级经济师人力资源管理案例分析押题卷含解析答案
- 新能源发电技术储能技术
- 先进制造技术自动化技术发展与应用
- 智能拐杖产品讲解
- 2025年贵州省中考英语试卷
- 血源性传播疾病暴露后处理
- 《WPS AI智能办公应用大全》全套教学课件
- 2024年湖北省科学技术馆度招聘真题
- 医院科室奖罚管理办法
- 《习作:缩写故事》教学课件
- 延缓慢性肾脏病进展临床管理指南(2025年)解读课件
- 钻芯法检测混凝土强度技术规程JGJ-T384-2024
评论
0/150
提交评论