掌握Visual Basic中的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对象为你定义的Connection对象的实例; ·ConnectionString为可选项,包括了衔接的数据库的信息; ·UserID 可选项,包括 构建衔接的消费者名; ·PassWord为可选项,包括 构建衔接的消费者密码; ·OpenOptions为可选项,如果设置为adConnectAsync,则衔接将异步 打开. (2) 打开记录集对象 实际上记录集返回的是一个从数据库取回的 查问 后果集. 因此他有两种 打开 步骤:一种 使用记录集的Open 步骤,另一种是用Connection对象的Execute 步骤 。 (a)记录集的Open 步骤 语法:
其中: ·Recordset为所定义的记录集对象的实例 。 ·Source可选项,指明了所 打开的记录源信息. 可以是合法的命令,对象变量名,SQL语句,表名,存储过程调用,或 保留记录集的文件名 。 ·ActiveConnection可选项,合法的已 打开的Connection对象的变量名,或者是包括ConnectionString参数的字符串 。 ·CursorType可选项,确定 打开记录集对象 使用的指针类型 。 ·LockType可选项 确定 打开记录集对象 使用的锁定类型 。 (b)Connection对象的Execute 步骤 语法:
参数 注明: ·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中它的 威力 加强了, 可以删掉一组记录了.
|