快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

探讨一下rs(0)和rs("fieldname")的执行效率

事实已证实了用索引数(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列表的字段顺序,那么在赋值时要特殊注重.

返回类别: 教程
上一教程: ASP文章系统的解决方案
下一教程: 用VB6做一个简朴的文件上传组件(一)

您可以阅读与"探讨一下rs(0)和rs("fieldname")的执行效率"相关的教程:
· 避免ASP的SQL的执行效率低
· 提高ASP页面的执行效率
· 提高ASP页面的执行效率(上)
· 探讨一下RS(0)和RS(
· 提高ASP页面的执行效率(下)
    微笑服务 优质保证 索取样品