亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ASP抽取數(shù)據(jù)的執(zhí)行效率

 更新時(shí)間:2006年12月16日 00:00:00   作者:  
通常從數(shù)據(jù)庫(kù)中抽取數(shù)據(jù)記錄,需要使用到SQL語(yǔ)句,查詢(xún)獲得相關(guān)記錄集,然后從記錄集中選擇相關(guān)字段、相關(guān)記錄行進(jìn)行顯示。

那么在抽取到顯示的一系列列過(guò)程中,如果注意如下幾個(gè)要點(diǎn),則令抽取數(shù)據(jù)的執(zhí)行效率大大增加。

1,明確抽取的字段名稱(chēng)

正常的SQL語(yǔ)句抽取記錄是:
Select * from [data_table]
即從數(shù)據(jù)表data_table中抽取所有字段的記錄值。

select * 語(yǔ)句的執(zhí)行效率是很低的,因?yàn)樵趫?zhí)行這樣的語(yǔ)句的時(shí)候其實(shí)執(zhí)行了兩次查詢(xún),在執(zhí)行select語(yǔ)句前,首先必須查詢(xún)系統(tǒng)表來(lái)確定名稱(chēng)和數(shù)據(jù)類(lèi)型。

所以盡量最少使用select *語(yǔ)句,而使用明確的字段名稱(chēng),如:
Select cn_name,cn_pwd from [data_table]
2,使用rs(0)比rs(filename)更快
Set rs=conn.Execute("Select cn_name,cn_pwd from [data_table]")
記錄集rs()里面可以寫(xiě)字段名(字符型),或者字段索引號(hào)(數(shù)字),它代表字段列表中第幾個(gè)字段。比如: 
rs(0)就表示rs("cn_name")
rs(1)表示rs("cn_pwd")

事實(shí)已證明了用索引數(shù)(index number)訪問(wèn)記錄集元素要比用字段名稱(chēng)(field name)快出幾倍。按字符串查詢(xún)要比按整數(shù)查詢(xún)花去更多的時(shí)間和系統(tǒng)資源。

3,使用記錄集rs值前,將其賦值給變量
<% 
Set rs=conn.Execute("Select cn_name,cn_pwd from [data_table] where cn_id=1")
if not rs.eof then 
do while not rs.eof 
cn_name = rs(0) ' 把rs值賦給變量 
cn_pwd = rs(1) 
' ... 使用變量處理工作 
rs.movenext 
loop 
end if 
rs.close 
Set rs = Nothing
%>

但在SQL語(yǔ)句或存儲(chǔ)過(guò)程中改變了select列表的字段顯示順序,那么在賦值和處理時(shí)就要注意了。
4,當(dāng)然,使用GetRows()又是另外一回事了

相關(guān)文章

最新評(píng)論