发布网友
共5个回答
热心网友
这两行代码需要放在循环体外面才比较直观,放在循环体里的话,这就和循环体的判断有关了。
rs.close就是recordset关闭,也就是关闭这个查询结果集。
set rs=nothing就是释放这个结果集占用的空间。
一般都需要用到这个操作。
热心网友
在循环结束以后才能写!
这是为了关闭上面定义的数据记录集,这主是起释放数据库记录集的作用,当一个页面只有一个记录集的时候不写看不到什么问题,只是会影响数据的访问效率,但是当一个页面有多个记录集,比如你定义的RS、RS1.。。。等等如果,有嵌套使用的时候如果内层不关闭你的程序就会报错了!
至于你所说的更好的办法,我建议是写程序代码的时候尤其有记录集嵌套的时候层次一定要分清楚,从里面向外逐层关闭,如果没有嵌套只是按步骤多次使用记录集,可以使用全局定义的方面缩减代码量!
希望对你有所帮助!
热心网友
因为在循环里面打开的,所以你必须在循环里面结束掉RS1,所以那两句话还是写在循环里面!另外,也可以直接用RS1.CLOSE的,set rs1=Nothing只是释放内存,可以在确定不再需要RS1以后才使用!
热心网友
当然是在循环外使用 rs1.close和set rs1=Nothing
思路应该是rs是一个记录集合,只有把记录集遍历全部遍历出来了,才能把记录集关闭然后释放内存。。。。如果在循环遍历的时候使用那数据会不完整而且会出异常
热心网友
set rs1=Server.CreateObject("Adodb.Recordset") '创建一个rs1
while not rs.eof
sql1=“select name from ywy where ywybh='"&rs("ywybh")&"'”
rs1.open sql1,conn,1,1
....
rs1.close
rs.movenext
wend
set rs1=nothing 'rs1没用了清理
文字东西就不说了。直接上代码。
热心网友
这两行代码需要放在循环体外面才比较直观,放在循环体里的话,这就和循环体的判断有关了。
rs.close就是recordset关闭,也就是关闭这个查询结果集。
set rs=nothing就是释放这个结果集占用的空间。
一般都需要用到这个操作。
热心网友
在循环结束以后才能写!
这是为了关闭上面定义的数据记录集,这主是起释放数据库记录集的作用,当一个页面只有一个记录集的时候不写看不到什么问题,只是会影响数据的访问效率,但是当一个页面有多个记录集,比如你定义的RS、RS1.。。。等等如果,有嵌套使用的时候如果内层不关闭你的程序就会报错了!
至于你所说的更好的办法,我建议是写程序代码的时候尤其有记录集嵌套的时候层次一定要分清楚,从里面向外逐层关闭,如果没有嵌套只是按步骤多次使用记录集,可以使用全局定义的方面缩减代码量!
希望对你有所帮助!
热心网友
这两行代码需要放在循环体外面才比较直观,放在循环体里的话,这就和循环体的判断有关了。
rs.close就是recordset关闭,也就是关闭这个查询结果集。
set rs=nothing就是释放这个结果集占用的空间。
一般都需要用到这个操作。
热心网友
在循环结束以后才能写!
这是为了关闭上面定义的数据记录集,这主是起释放数据库记录集的作用,当一个页面只有一个记录集的时候不写看不到什么问题,只是会影响数据的访问效率,但是当一个页面有多个记录集,比如你定义的RS、RS1.。。。等等如果,有嵌套使用的时候如果内层不关闭你的程序就会报错了!
至于你所说的更好的办法,我建议是写程序代码的时候尤其有记录集嵌套的时候层次一定要分清楚,从里面向外逐层关闭,如果没有嵌套只是按步骤多次使用记录集,可以使用全局定义的方面缩减代码量!
希望对你有所帮助!
热心网友
这两行代码需要放在循环体外面才比较直观,放在循环体里的话,这就和循环体的判断有关了。
rs.close就是recordset关闭,也就是关闭这个查询结果集。
set rs=nothing就是释放这个结果集占用的空间。
一般都需要用到这个操作。
热心网友
在循环结束以后才能写!
这是为了关闭上面定义的数据记录集,这主是起释放数据库记录集的作用,当一个页面只有一个记录集的时候不写看不到什么问题,只是会影响数据的访问效率,但是当一个页面有多个记录集,比如你定义的RS、RS1.。。。等等如果,有嵌套使用的时候如果内层不关闭你的程序就会报错了!
至于你所说的更好的办法,我建议是写程序代码的时候尤其有记录集嵌套的时候层次一定要分清楚,从里面向外逐层关闭,如果没有嵌套只是按步骤多次使用记录集,可以使用全局定义的方面缩减代码量!
希望对你有所帮助!
热心网友
因为在循环里面打开的,所以你必须在循环里面结束掉RS1,所以那两句话还是写在循环里面!另外,也可以直接用RS1.CLOSE的,set rs1=Nothing只是释放内存,可以在确定不再需要RS1以后才使用!
热心网友
当然是在循环外使用 rs1.close和set rs1=Nothing
思路应该是rs是一个记录集合,只有把记录集遍历全部遍历出来了,才能把记录集关闭然后释放内存。。。。如果在循环遍历的时候使用那数据会不完整而且会出异常
热心网友
set rs1=Server.CreateObject("Adodb.Recordset") '创建一个rs1
while not rs.eof
sql1=“select name from ywy where ywybh='"&rs("ywybh")&"'”
rs1.open sql1,conn,1,1
....
rs1.close
rs.movenext
wend
set rs1=nothing 'rs1没用了清理
文字东西就不说了。直接上代码。
热心网友
因为在循环里面打开的,所以你必须在循环里面结束掉RS1,所以那两句话还是写在循环里面!另外,也可以直接用RS1.CLOSE的,set rs1=Nothing只是释放内存,可以在确定不再需要RS1以后才使用!
热心网友
当然是在循环外使用 rs1.close和set rs1=Nothing
思路应该是rs是一个记录集合,只有把记录集遍历全部遍历出来了,才能把记录集关闭然后释放内存。。。。如果在循环遍历的时候使用那数据会不完整而且会出异常
热心网友
set rs1=Server.CreateObject("Adodb.Recordset") '创建一个rs1
while not rs.eof
sql1=“select name from ywy where ywybh='"&rs("ywybh")&"'”
rs1.open sql1,conn,1,1
....
rs1.close
rs.movenext
wend
set rs1=nothing 'rs1没用了清理
文字东西就不说了。直接上代码。
热心网友
因为在循环里面打开的,所以你必须在循环里面结束掉RS1,所以那两句话还是写在循环里面!另外,也可以直接用RS1.CLOSE的,set rs1=Nothing只是释放内存,可以在确定不再需要RS1以后才使用!
热心网友
当然是在循环外使用 rs1.close和set rs1=Nothing
思路应该是rs是一个记录集合,只有把记录集遍历全部遍历出来了,才能把记录集关闭然后释放内存。。。。如果在循环遍历的时候使用那数据会不完整而且会出异常
热心网友
set rs1=Server.CreateObject("Adodb.Recordset") '创建一个rs1
while not rs.eof
sql1=“select name from ywy where ywybh='"&rs("ywybh")&"'”
rs1.open sql1,conn,1,1
....
rs1.close
rs.movenext
wend
set rs1=nothing 'rs1没用了清理
文字东西就不说了。直接上代码。