rs对象的问题,大家进来讨论阿

jimlxk 2004-04-01 12:28:22
一个观点,页面在页尾会自动销毁 rs和conn 对象,释放内存资源。
相反的观点 ,rs和conn 对象不使用 close方法和set rs=nothing ,就不会释放资源,直到IIS重启。

这是我跟另一个程序员的观点,哪个正确呢


附带:在一个页面多次调用rs,后一次读取的结果直覆盖前一次的结果(使用的rs对象名不变)
...全文
26 点赞 收藏 47
写回复
47 条回复
切换为时间正序
请发表友善的回复…
发表回复
nameldw 2004-04-08
应该是后面的正确
回复
weiming28cn 2004-04-08
连接肯定是要close的!如con.close,set con = nothing
但是rs我想不一定要close,如果你使用了insert,update,delete,就不能close,
但是set rs = nothing 是必须的,
回复
jimlxk 2004-04-08
up
回复
40303331 2004-04-07
应该后面的观点吧
回复
chenlixin007 2004-04-07
up
回复
wj253 2004-04-07
ASP文件用完RS后会自动销毁,但是不下马上。一经过一定的时间,为了提高服务器性能,最好用完后调用rs.close rs.nothing
回复
king2003 2004-04-07
第一个观点正确,当ASP文件执行完时,会自动销毁。不过为了养成良好的编程习惯最好按照第二种做法来。
回复
Ranmei 2004-04-07
不用最好关闭连接,销毁对象。
回复
qxg1123 2004-04-07
close是断开连接
set nothing是释放内存
回复
lonaerd 2004-04-06
真是众说纷纭。
我还是坚持一个观点:不用关闭,会自动销毁。

VB以及ASP都是微软的解释器在运行,其变量的定义以及资源占用都已经作了处理
回复
jimlxk 2004-04-06
大家发言啊
回复
jimlxk 2004-04-06
还有谁说说,我们把这个问题说清,别让它误导人啊
回复
jimlxk 2004-04-06
up
回复
jimlxk 2004-04-06
是啊 ,没有定论阿!
回复
jimlxk 2004-04-05
to tddw:
我知道你对,可我知道为什么?
rs什么情况下会释放资源? 不使用rs.close,不改变对象名(rs),后面的值会覆盖前面的值吗?(我试过是可以的,可有的人说会出错,说资源没释放,前面的值还在缓存里)

  所以我迷惑阿
回复
tddw 2004-04-05
后一种观点正确。
应该使用rs.close
set rs=nothing

否则
我反问,
要这两个是干什么??

吃白饭的呀?

否则
我反问,
要这两个是干什么??

吃白饭的呀?
否则
我反问,
要这两个是干什么??

吃白饭的呀?
否则
我反问,
要这两个是干什么??

吃白饭的呀?
否则
我反问,
要这两个是干什么??

吃白饭的呀?
否则
我反问,
要这两个是干什么??

吃白饭的呀?
回复
maomaoma 2004-04-05
用create创建的对象,用完了都要先释放,所以还是后面的对.
回复
jimlxk 2004-04-05
我一般不改名,但我也很少使用rs.close : set rs=nothing
回复
tzgpxl 2004-04-05
RS是一个记录指针,在访问数据库的时候记录你访问记录的位置,打个比喻:
1 2 3 4 5 6
在你第一次创建rs时访问到了记录5的位置,
此时,你再创建一个rs,它会覆盖前一个指针,而且将指针重新移回到1的位置,即数据库首记录。所以,有两种方法解决,第一:创建的第二个记录指针改名为rs1(不赞成,因为这样对数据库是种虐待!)第二个方法是:rs.close:set rs=nothing
在一般情况下不赞成这种使用方法,因为如果数据库有20W条记录,你说记录指针从记录末移到记录首位置快,还是将指针消除,再重新创建一个快?呵呵,如果说是第一个快,
告你虐待数据库!呵呵,个人观点。呵呵
回复
jimlxk 2004-04-05
是大家都不愿意深究呢,还是这个问题根本不值得讨论阿
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告