日期:2014-05-17  浏览次数:20884 次

NextRecordset的问题 希望大家能帮兄弟一下呀 我真的搞不懂了
<!--#include   file= "dbconn.asp "-->
<%
dim   SQL,Rs,arrA,arrB,rowsA,rowsB
set   rs   =   server.CreateObject( "adodb.recordset ")
sql= "select   ID   from   T_Cate "
sql= "select   b   from   a "
  '-------------SELECTb
rs.open   sql,conn,3,3
arrA=rs.GetRows   '----------取得SElECTa   Recordset的二维数组
set   rs=rs.NextRecordset  
'------------最关键的一步,使用Nextrecordset激活下一个recordset
arrB=rs.GetRows   '----------再次取得第二个SElECTb   Recordset的二维数组  

rs.close
set   rs=nothing   '---------尽早释放数据库对象,关闭记录集
conn.close
set   conn=Nothing
'这样,我们所有关于数据库的数据干干净净的提取完成,用最早的时间释放数据库资源  
'-----------//

'========用取得的arrA   arrB进行页面处理,显示数据结果======
'注意,arrA=GetRows   后得到的数组,第一维是代表列,第二维代表行

rowsA=ubound(arrA,2)   '----提取arrA的第二维下标,相当于取得recordset   的记录行数
rowsB=ubound(arrB,2)   '-----同上,提取arrB的第二维下标  

'做数据循环:

'第一个select表的循环
response.write   " <table> "
For   i=0   to   rowsA
response.write   " <tr> "
response.write   " <td> "&arrA(i,0)& " </td> "   'tableA.Ca1  
response.write   " <td> "&arrA(i,1)& " </td> "   'tableA.Ca2  
response.write   " <td> "&arrA(i,2)& " </td> "   'tableA.Ca3  
response.write   " <td> "&arrA(i,3)& " </td> "   'tableA.Ca4  
response.write   " </tr> "
Next
response.write   " </table> "

'第二个select表循环
response.write   " <table> "
For   i=0   to   rowsB
response.write   " <tr> "
response.write   " <td> "&arrB(i,0)& " </td> "   'tableB.Cb1  
response.write   " <td> "&arrB(i,1)& " </td> "   'tableB.Cb2  
response.write   " <td> "&arrB(i,2)& " </td> "   'tableB.Cb3  
response.write   " <td> "&arrB(i,3)& " </td> "   'tableB.Cb4  
response.write   " <td> "&arrB(i,4)& " </td> "   'tableB.Cb5  
response.write   " </tr> "
Next
response.write   " </table> "
%>

这是我在网上摘录的代码   这是在读数据   但是我没有调试成功呀  
系统报错如下:
ADODB.Recordset   (0x800A0CB3)
当前提供程序不支持从单一执行返回多个记录集。

在这里我先谢谢大家了

------解决方案--------------------
access 不支持 rs.NextRecordset,即不支持同时打开两个以上记录集。