关于rs.close的问题。

cccloveyf 2008-06-30 05:20:23
一般在什么时候关闭,非在函数中。在页面的最后吗?
比如一个编辑页面,在页面最开始打开了一个rs。在页面中<input>控件里显示之前的内容value="<%=rs("name")%>"。那么在页面最后才rs.close吗?
那么当提交这个页面的时候,判断非空的语句
If Name="" Then
Response.Write("<script language='JavaScript'>alert('您没有输入名称');history.go(-1);</script>")
Response.end
End If
这样这个页面就提前结束了。那是不是应该写成下面这样更好?
If Name="" Then
rs.close
Set rs=nothing
Call CloseConn()
Response.Write("<script language='JavaScript'>alert('您没有输入名称');history.go(-1);</script>")
Response.end
End If
---------------------------------------------------------------------------------------------------
rs一般重复利用吗?还是再建立一个rs1,rs2......
重利用是下边哪种形式?
Set rs=Server.CreateObject("ADODB.recordset")
sqlstr="select * from Table where id=1"
rs open sqlstr,conn,1,1
'开始使用rs
rs.close
Set rs=nothing
Set rs=Server.CreateObject("ADODB.recordset")
sqlstr="select * from Table where id=2"
rs open sqlstr,conn,1,1
'再使用rs
----------------------------------------------
Set rs=Server.CreateObject("ADODB.recordset")
sqlstr="select * from Table where id=1"
rs open sqlstr,conn,1,1
'开始使用rs
rs.close
sqlstr="select * from Table where id=2"
rs open sqlstr,conn,1,1
'再使用rs
----------------------------------------------
Set rs=Server.CreateObject("ADODB.recordset")
sqlstr="select * from Table where id=1"
rs open sqlstr,conn,1,1
'开始使用rs
sqlstr="select * from Table where id=2"
rs open sqlstr,conn,1,1
'再使用rs
...全文
407 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
看明白了:对象是在使用完了以后及时释放
Dogfish 2008-07-02
  • 打赏
  • 举报
回复
在使用完之后就要关闭。但是要确认是否已经使用完,不然会出错。
osacar 2008-07-02
  • 打赏
  • 举报
回复
如果只是少量的表单数据,建议还是Rs.GetRows()吧。
这样就可以一查询完就可以关闭了,而且Rs.GetRows()后的值可以整页使用。
jhwcd 2008-06-30
  • 打赏
  • 举报
回复
rs.close可以重复使用,一个程序执行完了就关闭一次,不过这样容易出错。
bettywhite 2008-06-30
  • 打赏
  • 举报
回复
在需要关闭的时候关闭~~~我一般在页面里如果不第二次用到RS的话 我一般都是放在页面的结尾处
zj_JavaBean 2008-06-30
  • 打赏
  • 举报
回复
一般你查的数据集都完成任务后 就可以在后面关闭它

可以重复使用 只要之前的rs.close set rs=nothing 后 就可以再使用
zhanshanhu 2008-06-30
  • 打赏
  • 举报
回复
rs.close 可以在不用本次查询的时候及时关闭,set rs=nothing 在页面最后关闭,这样就可以节约打开rs记录的时间,rs.也可以多次使用.我一般都是这样做的,感觉不错,也不容易出错.
cccloveyf 2008-06-30
  • 打赏
  • 举报
回复
对了,第一个问题是action指定的还是本页面自己处理。不是给另一个ASP。所以我感觉
If Name="" Then
Response.Write(" <script language='JavaScript'>alert('您没有输入名称');history.go(-1); </script>")
Response.end
End If
应该写成
If Name="" Then
rs.close
Set rs=nothing
Call CloseConn()
Response.Write(" <script language='JavaScript'>alert('您没有输入名称');history.go(-1); </script>")
Response.end
End If

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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