一个关于ADO的问题,请各位帮忙!!!

Axuluo 2003-08-14 12:52:28
在VB6.0中,
dim rs as new adodb.recordset
......
rs.close

dim rs as adodb.recordset
set rs=new adodb.recordset
.....
set rs=nothing
这两种方式那一种更好呢,请哪位大侠详细解释一下,小弟先谢了!!
...全文
30 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
射天狼 2003-09-01
  • 打赏
  • 举报
回复
两种效果都一样,我喜欢用
dim rs as new adodb.recordset
Greaitm 2003-09-01
  • 打赏
  • 举报
回复
首先声明:这是类的范畴,而不是ADO的范畴,楼主不要弄错了。
其次:
dim rs as new adodb.recordset
这种方法在声明时也并没有初始化结构,只是在第一次调用rs的时候才初始化结构。
而用dim rs as adodb.recordset的时候。不但在声明的时候初始化结构,而且第一次凋用rs之前必须自己set rs=new adodb.recordset 来初始化结构。

用第二种方法的好处是自己能够绝对控制,假如你在Set rs=nothing之后,如果你误调用rs的方法或属性,用第一种方法就会重新初始化结构,程序员在错误中而不知不觉,而第二种方法就会提示错误。

反正第一种方法有好处也有坏处,只看你怎么利用它的特性,我是吃了不少苦头。大家应该按需要来定夺,而不是凭自己的喜好。

其实用第二种方法也可以模拟出第一种方法:
if(rs is nothing) then set rs=new adodb.recorderset

但你只能偶尔为之,如果程序中用这种代码太多的话,还不如直接用第一种方法。
Axuluo 2003-08-15
  • 打赏
  • 举报
回复
谢谢各位,看来发贴的人不少呀,但是究竟哪一种方式更好呢!!
(主要是在他的内部处理上来分析)
hejiecn 2003-08-14
  • 打赏
  • 举报
回复
后面一个比较保险。
chenkangli 2003-08-14
  • 打赏
  • 举报
回复
第一种方法简洁!
SamHuang1 2003-08-14
  • 打赏
  • 举报
回复
up
zhenglc 2003-08-14
  • 打赏
  • 举报
回复
dim rs as new adodb.recordset
我一般用这个
bJiao 2003-08-14
  • 打赏
  • 举报
回复
gpo2002(永吹不休)说的没错
strongfisher 2003-08-14
  • 打赏
  • 举报
回复
我喜欢
dim rs as adodb.recordset
set rs=new adodb.recordset
.....
set rs=nothing
gpo2002 2003-08-14
  • 打赏
  • 举报
回复
这只是定义对象的时候是否建立实例的区别

dim rs as adodb.recordset 只是定义了一个对象,此时他没有初始化,是空的无值的
set rs=new adodb.recordset 初始化建立了具体的对象

dim rs as new adodb.recordset 定义+分配 我喜欢,简单




wangbm 2003-08-14
  • 打赏
  • 举报
回复
dim rs as adodb.recordset
set rs=new adodb.recordset
最好,速度快。
你可以看看前期绑定和后期绑定

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧