用户名: 密码: 免费注册 忘记密码? 加入收藏 | 设为首页
掌握VB中的ADO数据对象编程
学院首页 | 资讯中心 | 服务器软件 | 系统工具 | 系统软件 | 办公软件 | 聊天软件 | 多 媒 体 | 网页制作 | 网站运营 | 平面设计
艺术欣赏 | 数据库软件 | 程序开发 | 网络组建 | 源码下载 | 驱动下载 | 软件下载 | 电脑安全 | IT创业 | IT博客 | IT社区
硬件数码导航 | 硬件频道 | 本本频道 | MP3频道 | 相机频道 | 手机频道 | 显卡频道 | LCD 频道 | 音箱音频 | 行情 | 评测 | 导购
学院专题 软件 - 系统 - 办公 - 聊天 - 多媒体 - 网页制作 - IT创业 - 运营 - 平面 - 设计欣赏 - 数据库 - 程序 - 服务器 - 组网

 当前位置: 首页>>技术频道>>程序>>Visual Basic教程>>正文

掌握VB中的ADO数据对象编程

日期:2006-9-15 4:19:08     来源:学院精选   编辑:   

那天听到一位同学说他的女朋友是学新闻的可也学会了数据库,可学计算机的自己却还是不会,总觉得有点汗颜.在各网站的论坛上,也常看到网友对数据库的一些操作很难把握.我想简单的介绍一下VB中关于ADO对象的一些常识,供同学们参考.其实本人也是刚刚懂了一点,拼凑出这篇文章,希望高手们看了不要见笑,但同时也希望对初学者有所帮助 。

  ADO是ActiveX Data Objects 的缩写,是一项新的数据库的存取技术 。 相对于VB5.0中的DAO他具有更为简化的对象模型,无论是存取本地的还是远程的数据,都提供了一致的接口.就我本人而言,ADO的确比DAO要好用得多 。

  今天只就ADO的对象模型谈一谈.ADO定义了一个可编程的对象集合.ADO对象模型如图所示:


  对于ADO其中对象来说,我觉得比较重要的是:Command,Connection,Recordset对象 。

  虽然严格的说这是不准确的,但根据我的实际经验确实如此.下面就分别来谈一下 。

  (1) Connection对象

  Connection对象用于建立与数据库的连接.通过连接可从应用程序访问数据源.它保存诸如指针类型,连接字符串,查询超时,连接超时和缺省数据库这样的连接信息.

  (2) Command对象

  在建立Connection后,可以发出命令操作数据源.一般情况下,Command对象可以在数据库中添加,删除或更新数据,或者在表中进行数据查询.Command对象在定义查询参数或执行一个有输出参数的存储过程时非常有用 。

  (3) Recordset对象

  Recordset对象只代表一个记录集,这个记录集是一个连接的数据库中的表,或者是Command对象的执行结果返回的记录集.在ADO对象模型中,是在行中检查和修改数据的最主要的方法,所有对数据的操作几乎都是在Recordset对象中完成的.Record对象用于指定行,移动行,添加,更改,删除记录 。

  下面就具体地说说如何用ADO存取数据:

  在实际编程过程中使用ADO的一个典型的存取数据的步骤为:

  (1) 连接数据源

  (2) 打开记录集对象

  (3) 使用记录集

  (4) 断开连接

  那么具体怎么是用呢?分别来看 。 (我在最后将给出一个完整的使用ADO的实例给大家参考.)

  (1) 如何连接数据源

  利用Connection对象可以创建一个数据源的连接.应用的方法是Connection对象的Open方法 。

  语法:

Connection对象.Open ConnectionString, UserID, PassWord, OpenOptions
  其中:

  ·Connection对象为你定义的Connection对象的实例;

  ·ConnectionString为可选项,包含了连接的数据库的信息;

  ·UserID 可选项,包含建立连接的用户名;

  ·PassWord为可选项,包含建立连接的用户密码;

  ·OpenOptions为可选项,假如设置为adConnectAsync,则连接将异步打开.

  (2)打开记录集对象

  实际上记录集返回的是一个从数据库取回的查询结果集.因此他有两种打开方法:一种使用记录集的Open方法,另一种是用Connection对象的Execute方法 。

  (a)记录集的Open方法

  语法:

Recordset.Open Source, ActiveConnection, CursorType, LockType, Options
  其中:

  ·Recordset为所定义的记录集对象的实例 。

  ·Source可选项,指明了所打开的记录源信息.可以是合法的命令,对象变量名,SQL语句,表名,存储过程调用,或保存记录集的文件名 。

  ·ActiveConnection可选项,合法的已打开的Connection对象的变量名,或者是包含ConnectionString参数的字符串 。

  ·CursorType可选项,确定打开记录集对象使用的指针类型 。

  ·LockType可选项 确定打开记录集对象使用的锁定类型 。

  (b)Connection对象的Execute方法

  语法:

Set recordset=Connection.Execute(CommandText,RecordsAffected,Options)
  参数说明:

  ·CommandText 一个字符串,返回要执行的SQL命令,表名,存储过程或指定文本 。

  ·RecordsAffected 可选项,Long类型的值,返回操作影响的记录数 。

  ·Options 可选项,Long类型值,指明如何处理CommandText参数 。

  介绍完了如何打开数据库下面说说怎么使用吧.

  (3)使用记录集

  (a)添加新的记录:

  在ADO中添加新的记录用的方法为:AddNew 它的语法为:

  Recordset.AddNew FieldList, Values

  ·Recordset为记录集对象实例

  ·FieldList为一个字段名,或者是一个字段数组.

  ·Values为给要加信息的字段赋的值,如果FiledList为一个字段名,那么Values应为一个单个的数值,假如FiledList为一个字段数组,那么 Values必须也为一个个数,类型与FieldList相同的数组 。

  再用完AddNew方法为记录集添加新的记录后,应使用UpDate将所添加的的数据存储在数据库中.不过你最好在用UpDate方法之前使用CancelUpdate方法来取消该项操作 。

  (b)修改记录集

  其实修改核对记录集中的数据重新赋值没有什么太大的区别,只要用SQL语句将要修改的字段的一个数据找出来重新赋值就可以了.这里不再细说了 。

  (c)删除记录

  在ADO中删除记录集中的数据的方法为:Delete方法,这与DAO对象的方法相同,但是在ADO中它的能力增强了,可以删掉一组记录了.
它的语法如下:

Recordset.Delete AffectRecords
  其中的,AffectRecords参数是确定Delete方法作用的方式的,它的取值如下:

  ·adAffectCurrent 只删除当前的记录

  ·adAffectGroup 删除符合Filter属性设置的那些记录.为了一次能删除一组数据,应设置Filter属性.

  (d)查询记录

  在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语句,表名或存储过程.

  (4) 断开连接

  在应用程序结束之前,应该释放分配给ADO对象的资源,操作系统回收这些资源并可以再分配给其他应用程序 。

  使用的方法为:Close方法 。

  语法如下:

Object.Close ' Object为ADO对象
  好了,说了那么多的理论,下面我们就应用一下吧!
gigi_miao

  ▼ 下一篇新闻 VB程序中用ADO对象动态创建数据库和表
  ▲ 上一篇新闻 用VB播放Avi、Wave、midi文件        网友发表观点请进入=>



我要纠错】【进入论坛交流】【关闭此页

文章搜索
   
最新文章

 
·千名爱好者参与首届PHP调查
·腾讯称QQ通讯信息密钥加密 不会被
·雅虎反超Google排名搜索第二
·中搜等十余家IT企业因流氓软件被
·盛大前员工克隆网游装备获暴利被
·凤凰网将向迅雷提供娱乐及宽带内
·信产部出手规范 新浪式企业法律架
·雅虎中国称旗下软件早已没有流氓
·中搜停止划词搜索与流氓软件决裂

广告赞助
相关文章 相关教程下载
焦点信息
·腾讯称QQ通讯信息密钥加密 不会被监听
·信产部出手规范 新浪式企业法律架构不得不改
·盛大前员工克隆网游装备获暴利被追刑责
·凤凰网将向迅雷提供娱乐及宽带内容
·雅虎中国称旗下软件早已没有流氓问题
·雅虎反超Google排名搜索第二
网友评论:(评论内容只代表网友观点,与本站立场无关!)
发表评论     Hard168社区推荐帖子
姓 名: *
* 请网友遵纪守法并注意语言文明。
IT人物推荐

王江民
马云
柳传志



关于本站    联络方式    广告服务    意见信箱    加入收藏   设为首页    -
本站部分内容来自网上,如有侵权部分,敬请告知,我们会在24小时内给予处理
版权所有:Hard168.Com,如需转载文章请与我们取得联系
京ICP备05063857号 Designed by Hard168.Com
掌握VB中的ADO数据对象编程