您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > VB中的ADO对象编程
VB中的ADO对象编程补充内容ADO(ActiveXDataObjects)ActiveX数据对象是微软最新的数据访问技术,与OLEDB一起工作。OLEDB是一个低层的基于COM的数据访问接口,它向应用程序提供了一个统一的数据访问方法,用它可以访问各种数据源,包括关系型数据库、电子邮件系统、自定义的商业对象。其模型如下:VB应用程序ADOOLEDBRDBMSEmail目录管理先在VB工程中把ADO对象库加载上工程引用选中microsoftactivexdataobject2.7library一、通过DSN建立连接DSN:应用程序用以请求一个连到ODBC(opendatabaseconnectivity,开放数据库互连)数据源的连接的名字。也就是说他代表ODBC连接的名字,隐藏了诸如数据库名字、所在目录、数据库驱动程序、用户ID、密码等,使具体的数据库对应用程序变得透明。1、DSN分类:系统DSN:可以被登陆到系统中的所有用户使用。用户DSN:为特定用户建立的,只能被建立他的用户使用。文件DSN:用于文档的DSN。2、如何建立Access的系统DSN:(Winxp)(1)开始控制面板性能维护管理工具数据源ODBC;(2)单击系统DSN选项卡添加创建新数据源3、建立SQLServer系统DSNDimcnaasnewadodb.connectionDimcnbasnewadodb.connectionPrivatesubcommand1_click()DimcnastringasstringCnastring=“dsn=sqlpubs;uid=sa;pwd=1234”‘SQLDSN数据源的连接字符串Withcna.connectionstring=cnastring.connectiontimeout=10.openEndwith或:cna.open“dsn=sqlpubs;uid=sa;pwd=1234”Cna.close‘关闭连接EndsubPrivatesubcommand2_click()DimcnbstringasstringCnbstring=“dsn=aa;uid=;pwd=”‘AccessDSN数据源的连接字符串Withcnb.connectionstring=cnastring.connectiontimeout=10.openEndwith或:cnb.open“dsn=aa;uid=;pwd=”Cnb.close‘关闭连接Endsub二、直接使用数据库文件名1、SQLServer的连接字符串“driver={SQLServer};server=bjz;database=pubs;uid=sa;pwd=1234”2、Access的连接字符串(1)“driver=Microsoftaccessdriver(*.mdb);DBQ=“&app.path&“\student.mdb”(2)使用OLEDB提供者建立连接provider=Microsoft.Jet.OLEDB.4.0;DataSource=“&App.Path&”\student.mdb&“userid=;password=”ADO中比较重要的是:Command,Connection,Recordset对象(1)Connection对象Connection对象用于建立与数据库的连接,通过连接可从应用程序访问数据源.它保存诸如指针类型,连接字符串,查询超时,连接超时和缺省数据库这样的连接信息。2)Command对象在建立Connection后,可以发出命令操作数据源。一般情况下,Command对象可以在数据库中添加,删除或更新数据,或者在表中进行数据查询。Command对象在定义查询参数或执行一个有输出参数的存储过程时非常有用。(3)Recordset对象Recordset对象只代表一个记录集,这个记录集是一个连接的数据库中的表,或者是Command对象的执行结果返回的记录集.在ADO对象模型中,是在行中检查和修改数据的最主要的方法,所有对数据的操作几乎都是在Recordset对象中完成的。Record对象用于指定行,移动行,添加,更改,删除记录.在实际编程过程中使用ADO的一个典型的存取数据的步骤为:1、连接数据源2、打开记录集对象3、使用记录集4、断开连接1、如何连接数据源利用Connection对象可以创建一个数据源的连接.应用的方法是Connection对象的Open方法.语法:Connection对象.OpenConnectionString,UserID,PassWord,OpenOptions其中:Connection对象为你定义的Connection对象的实例;ConnectionString为可选项,包含了连接的数据库的信息;UserID可选项,包含建立连接的用户名;PassWord为可选项,包含建立连接的用户密码;OpenOptions为可选项,假如设置为dConnectAsync,则连接将异步打开.2.打开记录集对象实际上记录集返回的是一个从数据库取回的查询结果集.因此有三种打开方法:一种使用记录集的Open方法。另一种是用Connection对象的Execute方法.一种是用Command对象的Execute方法.(a)记录集的Open方法语法:Recordset.OpenSource,ActiveConnection,CursorType,LockType,Options其中:Recordset为所定义的记录集对象的实例.Source可选项,指明了所打开的记录源信息.可以是合法的命令,对象变量名,SQL语句,表名,存储过程调用,或保存记录集的文件名.ActiveConnection可选项,合法的已打开的Connection对象的变量名,或者是包含ConnectionString参数的字符串.CursorType可选项,确定打开记录集对象使用的指针类型.LockType可选项确定打开记录集对象使用的锁定类型.(b)Connection对象的Execute方法语法:Setrecordset=Connection.Execute(CommandText,RecordsAffected,Options)参数说明:CommandText一个字符串,返回要执行的SQL命令,表名,存储过程或指定文本.RecordsAffected可选项,Long类型的值,返回操作影响的记录数.Options可选项,Long类型值,指明如何处理CommandText参数.(c)Command对象的Execute方法使用Command对象的Execute方法执行CommandText属性中设置的SQL命令,返回查询记录集.语法如下:Command.ExecuteRecordsAffected,Parameters,Options'不返回记录集或者SetRecordset=command.Execute(RecordsAffected,Parameters,Options)‘返回记录集CommandText的语法为:Command.CommandText=stringvariable其中:stringvariable为字符串变量,包含SQL语句,表名或存储过程.3.使用记录集(a)添加新的记录:在ADO中添加新的记录用的方法为:AddNew它的语法为:Recordset.AddNewFieldList,ValuesRecordset为记录集对象实例FieldList为一个字段名,或者是一个字段数组.Values为给要加信息的字段赋的值,如果FiledList为一个字段名,那么Values应为一个单个的数值,假如FiledList为一个字段数组,那么Values必须也为一个个数,类型与FieldList相同的数组.当用AddNew方法为记录集添加新的记录后,应使用UpDate将所添加的的数据存储在数据库中.(记录的修改)(b)删除记录在ADO中删除记录集中的数据的方法为:Delete方法,这与DAO对象的方法相同,但是在ADO中它的能力增强了,可以删掉一组记录了.它的语法如下:Recordset.DeleteAffectRecords其中的,AffectRecords参数是确定Delete方法作用的方式的,它的取值如下:adAffectCurrent只删除当前的记录adAffectGroup删除符合Filter属性设置的那些记录.为了一次能删除一组数据,应设置Filter属性.(c)查询记录在ADO中查询的方法很灵活,有几种查询的方法.使用连接对象的Execute方法执行SQL命令,返回查询记录集.使用Command对象的Execute方法执行CommandText属性中设置的SQL命令,返回查询记录集.使用记录集的Open方法,返回查询记录集。4.断开连接在应用程序结束之前,应该释放分配给ADO对象的资源,操作系统回收这些资源并可以再分配给其他应用程序.使用的方法为:Close方法.语法如下:Object.Close‘Object为ADO对象如果不做的话,通常VisualBasic会自动释放和回收资源。rs.CloseSetrs=NothingSetcmd=Nothingcn.CloseSetcn=Nothing二、数据库访问对象(ADO)ADO(ActiveXDataObjects)ActiveX数据对象是微软最新的数据访问技术,与OLEDB一起工作。在VisualBasic中使用ADO–在一个打开的VisualBasic6.0的工程中,选择菜单〔工程〕/〔引用〕命令,出现“引用”对话框。在“可用的引用”列表框中选择MicrosoftActiveXDataObjects2.8选项,单击〔确定〕按钮,就可以在程序中加入对ADO的引用了。使用ADO可以实现以下目的:a)连接一个本地数据库或远程数据库b)打开一个指定的数据库表,或定义一个基于结构化查询语言(SQL)的查询或存储过程或该数据库中的表的视图的记录集合c)将数据字段的值传递给数据绑定的控件,可以在这些控件中显示或更改这些数值d)添加新的记录,或根据对绑定的控件中的数据的更改来更新一个数据库–ADO的内置对象1、连接对象(Connection)用来与数据库建立连接。在建立连接前,最主要的是需要设置连接字符串,用来指定连接数据库所用的驱动程序、数据源名称、用户名和密码等。常用的属性与方法:–ConnectionString属性:连接字符串,在打开连接前需要设置–ConnectionTimeout和Mode属性:超时时间和连接模式,一般在打开连接前也需要设置–CursorLocation属性:设置或者返回游标位置–DefaultDatabase属性:为连接指定一个默认的据库–Provider属性:为连接指定一个驱动程序,可以包括在ConnectionString中–Open,Close方法:建立或中断一个连接–Execute方法:在连接上执行命令,比如执行一个SQL语句–Errors对象:数据源返回的错误信息(eg)“连接”是交换数据所必需的环境,通过“连接”可使应用程序访问数据源。Connection对象用于指定专门的提供者和任意参数。下表列出Connection对象的常用属性和方法。ConnectionString属性指定到数据源的连接字符串Open方法打开到数据源的连接Execute方法对连接执行各种操作Cancel方法取消Open或Execute方法的调用Close方法关闭打开的Connection对象如何连接利用Connection对象可以创建一个数据源的连接.应用的方法是Connection对象的Open方法.语法:Connection对象.OpenConnectionString,UserID,PassWord,OpenOptions其中:Connection对象为你定义的Connec
本文标题:VB中的ADO对象编程
链接地址:https://www.777doc.com/doc-3689693 .html