注册 登录
编程论坛 ASP技术论坛

asp如何对记录集进行数组分类

guaishi 发布于 2007-12-07 11:12, 1806 次点击
我想问一个关于记录集的问题
我运行一个sql语句后得到一个记录集
第一条记录集可以用rs(0)来表示
那么第二条记集的其中一个字段的值如何表示呀
6 回复
#2
永夜的极光2007-12-07 12:38
rs(0)就是第一个字段,或者用rs("字段名")的形式

要到下一条记录,是用rs.movenext
#3
xiaobai405102007-12-07 13:36
rs(0)表示数据表中的第一个字段,刚开始默认从第一个记录(第一列)开始,然后用rs.movenext往下循环
#4
MikeFT2007-12-07 13:48
rs.movenext
rs(1)
我猜的!!!
#5
yms1232007-12-07 16:28
<%
'记录集转二维数组方法
ErrMsg=""
Function RecordSetToArray(rs)
   Dim r,c,reAry()
   ReDim reAry(rs.recordcount,rs.Fields.count)
   IF rs.EOF Then
      ErrMsg="数据库记录为空"
   Else
        r=0
        Do Until rs.EOF
              For c=0 To rs.Fields.count-1
                     reAry(r,c)=CStr(rs.Fields(c).Value)
              Next
              r=r+1
              rs.movenext
        Loop
   End IF
   RecordSetToArray=reAry
End Function
'调用示例
'省略数据库打开代码,数据库连接对象为con
Dim rs,r,c,rsAry()
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.Open "select * from [tablename]" ,con,1,1
'tablename换成要显示的表名
rsAry=RecordSetToArray(rs)
IF ErrMsg<>"" Then
    Response.Write ErrMsg
Else
   With Response
         .Write "<table>"
         For r=0 To rs.recordcount
                .Write "<tr>"
                For c=0 To rs.Fields.count-1
                       .Write "<td>"&rsAry(r,c)&"</td>"
                Next
                .Write "</tr>"
         Next
         .Write "</table>"
   End With
End IF
%>
以上代码没有测试不知道能不能运行。

[[italic] 本帖最后由 yms123 于 2007-12-7 16:32 编辑 [/italic]]
#6
yms1232007-12-07 16:34
程序中表现数据库中的数据表,最适合使用的就是二维数组。
#7
guaishi2008-01-05 23:37
谢谢我明白了
1