ASP抽取数据的执行效率

时间:2021-05-28

通常从数据库中抽取数据记录,需要使用到SQL语句,查询获得相关记录集,然后从记录集中选择相关字段、相关记录行进行显示。

那么在抽取到显示的一系列列过程中,如果注意如下几个要点,则令抽取数据的执行效率大大增加。

1,明确抽取的字段名称

正常的SQL语句抽取记录是:
Select*from[data_table]
即从数据表data_table中抽取所有字段的记录值。

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

所以尽量最少使用select*语句,而使用明确的字段名称,如:
Selectcn_name,cn_pwdfrom[data_table]
2,使用rs(0)比rs(filename)更快
Setrs=conn.Execute("Selectcn_name,cn_pwdfrom[data_table]")
记录集rs()里面可以写字段名(字符型),或者字段索引号(数字),它代表字段列表中第几个字段。比如:
rs(0)就表示rs("cn_name")
rs(1)表示rs("cn_pwd")

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

3,使用记录集rs值前,将其赋值给变量
<%
Setrs=conn.Execute("Selectcn_name,cn_pwdfrom[data_table]wherecn_id=1")
ifnotrs.eofthen
dowhilenotrs.eof
cn_name=rs(0)'把rs值赋给变量
cn_pwd=rs(1)
'...使用变量处理工作
rs.movenext
loop
endif
rs.close
Setrs=Nothing
%>

但在SQL语句或存储过程中改变了select列表的字段显示顺序,那么在赋值和处理时就要注意了。
4,当然,使用GetRows()又是另外一回事了

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章