PC6下载站

分类分类

探讨一下rs0和rs"fieldname"的执行效率

关注+2004-11-07作者:蓝点

事实已证明了用索引数(index number)访问记录集元素要比用字段名称(field name)快出几倍.按字符串查询要比按整数查询花去更多的时间系统资源.

因此,在遍历数据库时应注意下面的两个问题:

    1.尽量最少使用select * 这样的语句

      在遍历某表里少量的字段时,select * 语句的执行效率是很低的,因为在执行这样的语句的时候其实执行了两次查询,在执行select语句前,首先必须查询系统表来确定名称和数据类型。

    2.在使用记录集rs值前,应该把它赋值给本地变量.

      这尤其适用于操作Text/Memo字段.

我发现在"read mode"下调用本地变量比从记录集中从新调用rs值要略快,特别是在多次recall recordset时,效果会更明显.

下面来看一个ASP的例子:

<%

    ' 创建数据库连接.

    set rs = conn.execute("exec sp_getRecords")

    if not rs.eof then

        do while not rs.eof



            id = rs(0) ' 把rs值赋给本地变量

            fname = rs(1)  

            lname = rs(2)  



            ' ... 使用本地变量处理工作



            rs.movenext

        loop

    end if

    ' ... 释放变量,结束连接.

%>

最后要注意:如果在SQL语句或存储过程中改变了select列表的字段顺序,那么在赋值时要特别注意.


展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消