不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
探讨一下rs(0)和rs("fieldname")的执行效率
编辑:dnawo 日期:2007-05-28
事实已证明了用索引数(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列表的字段顺序,那么在赋值时要特别注意.
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列表的字段顺序,那么在赋值时要特别注意.
评论: 1 | 引用: 0 | 查看次数: 3775
发表评论
请登录后再发表评论!