标题:为什么要用set rst =ADODB.Recordset实例化呢
只看楼主
VB爱上我
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:478
专家分:52
注 册:2005-10-14
结帖率:100%
 问题点数:0 回复次数:17 
为什么要用set rst =ADODB.Recordset实例化呢
Dim rst as Recordset不是对象的申明吗
为什么要用set rst =ADODB.Recordset实例化呢。
不能用set rst =Recordset这个吗???
搜索更多相关主题的帖子: rst Recordset ADODB 实例 
2006-02-22 15:26
wsn
Rank: 2
等 级:新手上路
威 望:5
帖 子:321
专家分:0
注 册:2006-2-9
得分:0 

对象实例化 应该还要加new吧

我常用Dim rst as new adodb. Recordset

[此贴子已经被作者于2006-2-22 15:55:58编辑过]


已婚男人!没事请勿打扰·老婆格言:①不准對她耍酷 ②不准讓她吃醋 ③吵架我要讓步 ④揍我我要挺住⊙⊙
2006-02-22 15:27
VB爱上我
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:478
专家分:52
注 册:2005-10-14
得分:0 
对象实例化常用的有两种方法:
1、Dim rst as Recordset
  set rst =ADODB.Recordset
2、Dim rst as new adodb. Recordset
Recordset前面为什么一定要加个ADODB.再实例化呢?

IT618资讯网 提供服务端开发,前端开发,网页特效,热门开源系统研究,软件下载,站长建站,淘宝开店等学习资料.
2006-02-22 16:04
wsn
Rank: 2
等 级:新手上路
威 望:5
帖 子:321
专家分:0
注 册:2006-2-9
得分:0 
这个不是很清楚,到MSDN查查看

已婚男人!没事请勿打扰·老婆格言:①不准對她耍酷 ②不准讓她吃醋 ③吵架我要讓步 ④揍我我要挺住⊙⊙
2006-02-22 16:12
VB爱上我
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:478
专家分:52
注 册:2005-10-14
得分:0 
高手啊,我还里没有装帮助。惨啊。你那有就发到论谈上来给我看看。谢谢……

IT618资讯网 提供服务端开发,前端开发,网页特效,热门开源系统研究,软件下载,站长建站,淘宝开店等学习资料.
2006-02-22 16:56
xinfresh
Rank: 4
等 级:贵宾
威 望:13
帖 子:594
专家分:0
注 册:2006-1-13
得分:0 

我觉得
Dim rst as Recordset
里的 Recordset是个对象的类型吧
set rst =ADODB.Recordset
是个赋值语句,这个Recordset是ADODB的一个对象集
我猜的,不对不要怪我


E-mail:xinfresh@QQ:383094053校内:http:///getuser.do?id=234719042
2006-02-22 19:12
xinfresh
Rank: 4
等 级:贵宾
威 望:13
帖 子:594
专家分:0
注 册:2006-1-13
得分:0 
MSDN原文(一,ADO对象)

ADO 2.0 对象模型

ADO 2.0 对象模型是由八个对象组成的,它们中的大多数在功能上和 RDO 对象相似,只不过具有更强的功能性而已。需要花一些时间在 Object Browser (F2) 中浏览对象模型,以便于熟悉各种不同属性、方法、事件、集合等等所在的位置。

注意 所有后面带有星号 (*) 的对象都是同时应用于 ADO Recordset 类型库 (ADOR) 的对象。

  • Command 对象 包含关于某个命令,例如查询字符串、参数定义等的信息。Command 对象在功能上和 RDO 的 rdoQuery 对象是相似的。

  • Connection 对象 包含关于某个数据提供程序的信息。Connection 对象在功能上和 RDO 的 rdoConnection 对象是相似的,并且包含了关于结构描述的信息。它还包含某些 RDOEnvironment 对象的功能,例如 transaction 控件。

  • Error 对象 包含数据提供程序出错时的扩展信息。Error 对象在功能上和 RDO 的 rdoError 对象是相似的。

  • Field 对象* 包含记录集中数据的某单个列的信息。Field 对象在功能上和 RDO 的 rdoColumn 对象是相似的。

  • Parameter 对象 包含参数化的 Command 对象的某单个参数的信息。该 Command 对象有一个包含其所有 Parameter 对象的 Parameters 集合。Parameter 对象在功能上和 RDO 的 rdoParameter 对象是相似的。

  • Property 对象* 包含某个 ADO 对象的提供程序定义的特征。没有任何等同于该对象的 RDO,但 DAO 有一个相似的对象。ADO 对象可以具有两种属性:
    • Built-In 属性:ADO 的“本地”属性。也就是说,任何使用熟悉的 MyObject.Property 语法的新对象都可以立即使用的 ADO 中的属性。Built-in 属性并不在某个对象的 Properties 集合中以 Property 对象的形式出现,因此尽管您可以修改它们的值,您却不能修改它们的特性或将它们删除。

    • Dynamic 属性:ADO 的非本地属性,它们是由下一级数据提供程序定义的。它们出现在合适的 ADO 对象的 Properties 集合中。

      例如,一个数据提供程序特有的属性可能指明某个 Recordset 对象是支持事务还是支持更新。这些附加的属性在 Recordset 的 Properties 集合中以 Property 对象的形式出现。Dynamic 属性只能用 MyObject.Properties(0) 或 MyObject.Properties("Name") 语法通过集合来引用。不同的数据提供程序可能提供一个或多个特殊的属性,来处理提供程序特有的操作。

  • Recordset 对象* Recordset 对象包含某个查询返回的记录,以及那些记录中的游标。Recordset 对象在功能上和 RDO 的 rdoResultset 对象相似。您可以在不用显式地打开 Connection 对象的情况下,打开一个 Recordset(例如,执行一个查询)。不过,如果您选择创建一个 Connection 对象,您就可以在同一个连接上打开多个 Recordset 对象。

E-mail:xinfresh@QQ:383094053校内:http:///getuser.do?id=234719042
2006-02-22 19:14
xinfresh
Rank: 4
等 级:贵宾
威 望:13
帖 子:594
专家分:0
注 册:2006-1-13
得分:0 
MSDN原文(二,Recordset对象)

Recordset 对象 (ADO)

Recordset 对象表示的是来自基本表或命令执行结果的记录全集。任何时候,Recordset 对象所指的当前记录均为集合内的单个记录。



说明

可使用 Recordset 对象操作来自提供者的数据。使用 ADO 时,通过 Recordset 对象可对几乎所有数据进行操作。所有 Recordset 对象均使用记录(行)和字段(列)进行构造。由于提供者所支持的功能不同,某些 Recordset 方法或属性有可能无效。

ADOR.RecordsetADODB.Recordset 是用来创建 Recordset 对象的 ProgID。由此产生的 Recordset 对象行为相同,与 ProgID 无关。ADOR.Recordset 随 Microsoft® Internet Explorer 安装,而 ADODB.Recordset 则随 ADO 安装。Recordset 对象的行为受环境(即客户端、服务器、Internet Explorer 等)的影响。这些差异将在属性、方法和事件的“帮助”主题中加以说明。

ADO 中定义了四种不同的游标类型:

  • 动态游标 — 用于查看其他用户所作的添加、更改和删除,并用于不依赖书签的 Recordset 中各种类型的移动。如果提供者支持,可使用书签。

  • 键集游标 — 其行为类似动态游标,不同的只是禁止查看其他用户添加的记录,并禁止访问其他用户删除的记录,其他用户所作的数据更改将依然可见。它始终支持书签,因此允许 Recordset 中各种类型的移动。

  • 静态游标 — 提供记录集合的静态副本以查找数据或生成报告。它始终支持书签,因此允许 Recordset 中各种类型的移动。其他用户所作的添加、更改或删除将不可见。这是打开客户端 (ADOR) Recordset 对象时唯一允许使用的游标类型。

  • 仅向前游标 — 除仅允许在记录中向前滚动之外,其行为类似动态游标。这样,当需要在 Recordset 中单程移动时就可提高性能。

在打开 Recordset 之前设置 CursorType 属性来选择游标类型,或使用 Open 方法传递 CursorType 参数。部分提供者不支持所有游标类型。请检查提供者的文档。如果没有指定游标类型,ADO 将默认打开仅向前游标。

对部分提供者(例如 Microsoft ODBC Provider for OLE DB 连同 Microsoft SQL Server),可以通过使用 Open 方法传递连接字符串,根据以前定义的 Connection 对象独立地创建 Recordset 对象。ADO 仍然创建 Connection 对象,但它不将该对象赋给对象变量。不过,如果正在相同的连接上打开多个 Recordset 对象,就应该显式创建和打开 Connection 对象,由此将 Connection 对象赋给对象变量。如果在打开 Recordset 对象时没有使用该对象变量,即使在传递相同连接字符串的情况下,ADO 也将为每个新的 Recordset 创建新的 Connection 对象。

可以创建所需数量的 Recordset 对象。

打开 Recordset 时,当前记录位于第一个记录(如果有),并且 BOFEOF 属性被设置为 False。如果没有记录,BOFEOF 属性设置是 True

假设提供者支持相关的功能,可以使用 MoveFirstMoveLastMoveNext MovePrevious 方法以及 Move 方法,和 AbsolutePositionAbsolutePageFilter 属性来重新确定当前记录的位置。仅向前 Recordset 对象只支持 MoveNext 方法。当使用 Move 方法访问每个记录(或枚举 Recordset)时,可使用 BOFEOF 属性查看是否移动已经超过了 Recordset 的开始或结尾。

Recordset 对象可支持两类更新:立即更新和批更新。使用立即更新,一旦调用 Update 方法,对数据的所有更改将被立即写入现行数据源。也可以将值的数组作为参数传递来使用 AddNewUpdate 方法,同时更新记录的若干字段。

如果提供者支持批更新,可以使提供者将多个记录的更改存入缓存,然后使用 UpdateBatch 方法在单个调用中将它们传送给数据库。这种情况应用于使用 AddNewUpdate Delete 方法所做的更改。调用 UpdateBatch 方法后,可以使用 Status 属性检查任何数据冲突并加以解决。

注意 要执行不使用 Command 对象的查询,应将查询字符串传递给 Recordset 对象的 Open 方法。但是,在想要保持命令文本并重复执行或使用查询参数时,仍然需要 Command 对象。


E-mail:xinfresh@QQ:383094053校内:http:///getuser.do?id=234719042
2006-02-22 19:15
VB爱上我
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:478
专家分:52
注 册:2005-10-14
得分:0 
好像懂了一点,谢谢支持!~

IT618资讯网 提供服务端开发,前端开发,网页特效,热门开源系统研究,软件下载,站长建站,淘宝开店等学习资料.
2006-02-23 08:52
kfp_kaka
Rank: 4
等 级:贵宾
威 望:13
帖 子:353
专家分:0
注 册:2006-1-12
得分:0 
刚好我也遇到这个问题,那么
Dim mrc as ADODB.Recordset 和
Dim mrc as Recordset 有什么区别呢?

爱一个人不一定要拥有她 拥有一个人就一定要好好的爱她
2006-02-23 09:55



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-46636-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.547025 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved