数据库记录集的分列显示

类别:Asp 点击:0 评论:0 推荐:

数据库记录集的分列显示


/**
@作者  : 慈勤强
@Email : [email protected]
*/

    在用asp、php或者其他语言从数据库中提取记录显示的时候,一般我们都是一行一行

的显示,一条记录一行,就像下面的样子:


姓名     性别    年龄   籍贯
慈勤强    男      26    山东省荣成市
李冉      男      26    北京方庄

    可是有时候,我们也需要分列显示,就是每行显示多条记录,特别是一些类别显示的,比如:

    化工行业     纺织行业     服装鞋帽
    电子信息     制造业       农林
    水产


共三列,每行显示3条信息。

我看过一些朋友写的程序,有些写的不是很好,下面以asp为例说明:

一、普通写法

strSql    = "Select name From Category"
Set objRs = objConn.Execute(strSql)
While Not objRs.EOF
    '每行的第一列
    Response.Write objRs(0) & " "
    objRs.MoveNext
    '第二列
    Response.Write objRs(0) & " "
    objRs.MoveNext
    '第三列
    Response.Write objRs(0) & " "
    objRs.MoveNext
   
    '重起一行
    Response.Write "<br>"
Wend


二、改进的写法

iColumn = 3  '每行显示3列
i=1          '一个滚动的标记,每次加1
strSql    = "Select name From Category"
Set objRs = objConn.Execute(strSql)

While Not objRs.EOF
   
    Response.Write objRs(0) & " "
    objRs.MoveNext
   
    If i Mod iColumn=0 Then   '当输出三条记录时,就换行
     Response.Write "<br>"
    End If
    i = i + 1
Wend


想必大家都已经看清楚了,我们只要在循环体内判断一下,

如果输出了3条记录,就打印一个换行符,重新开始一行输出。

这里用到了求余运算 Mod 。

本文地址:http://com.8s8s.com/it/it8197.htm