strTitle=Request.Form("Title") strFirstName=Request.Form("FirstName") strLastName=Request.Form("LastName") If Len(strTitle) Then strTitle=strTitle " " If strFirstName="" Then strFullName=strTitle " " strLastName Elseif Len(strFirstName)=1 Then strFullName=strTitle strFirstName ". " strLastName Else strFullName=strTitle strFirstName " " strLastName End If
…… Code to create first part of the page If Response.IsClientConnected Then Response.Flush Else Response.End End If …… Code to create next part of page 技巧之四:優(yōu)化ASP中的ADO操作
通常面言,數(shù)據(jù)構(gòu)成了WEB站點的實際內(nèi)容。所以,優(yōu)化ADO操作以加速ASP代碼執(zhí)行,十分有用: a. 僅選擇所需的列:當(dāng)打開ADO記錄集時,除非需要獲得所有的列,否則不應(yīng)自動地使用表名(即SELECT *)。使用單獨的列意味著將減少發(fā)送到服務(wù)器或從服務(wù)器取出的數(shù)據(jù)量。即使需要使用全部列,單獨地命名每個列也會獲得最佳的性能,因為服務(wù)器不必再解釋這些列的名字。
b. 盡可能的使用存儲過程。存儲過程是預(yù)先編譯的程序,含有一個已經(jīng)準(zhǔn)備好的執(zhí)行計劃,所以比SQL語句執(zhí)行更快。
c. 使用適當(dāng)?shù)墓鈽?biāo)和鎖定模式。如果所做的全部工作只是從記錄集中讀取數(shù)據(jù),并將其顯示在屏幕上,那么就使用缺省的只能前移、只讀的記錄集。ADO用來維護記錄和鎖定的細節(jié)的工作越少,執(zhí)行的性能就越高。
d. 使用對象變量。當(dāng)遍歷記錄集時一個肯定能提高性能的方法是使用對象變量指向集合中的成員。例如:
While Not RsGc.EOF Response.Write "工程名稱:" RsGc("GcMC") "(工程代碼:" RsGc("GcCode") ") " RsGc.MoveNext Wend
可以用改寫為下面的代碼以加快執(zhí)行:
set GcMc=RsGc("GcMc") set GcCode=RsGc("GcCode") While Not rsGc.EOF Response.Write "工程名稱:" GcMc "(工程代碼:" GcCode ") " RsGc.MoveNext Wend