最佳化ASP程式效能(轉)(二)

來源:互聯網
上載者:User
資料庫訪問

   存取資料庫將會很快地減慢程式,但是沒有資料庫,許多網站也不行。不要使用內植的SQL語句來存取資料庫,你可以通過使用預存程序來訪問資料庫,這將會贏得很大的程式效能,而且,也非常得靈活。使用預存程序,並配合ActiveX Data Objects(ADO),就能最大程度地控制預存程序如何輸出。
   確認資料庫經過了索引,因為這將直接影響到應用程式的整體效能。同時,注意在資料庫上運行更新統計程式,從而更好地跟蹤資料的分布。注意,一些資料庫,比如MS Access,不適於企業級應用,而SQL Server 7.0或者Oracle更適於做這些。
   讓SQL做設計好的工作,包括對資料進行計算、加入、排序和分組。不要用其他語言寫這些功能,可以編寫一個查詢來完成。
   任何要計算的欄位就是下面所示的簡單文法:
   SELECT count(*) FROM publishers WHERE state='NY'
   如果要計算一個特殊欄位,必須先按那個欄位分組,否則,將不會工作:
   SELECT count(city),city FROM publishers GROUP BY city
   接著確定排序方法:
   SELECT * FROM TableName WHERE FieldName >50 OR FieldName< 100 ORDER BY FieldName2, FieldName3
   仍然使用ODBC系統或者檔案DSN來串連資料庫,或者使用很快的OLEDB技術來串連。使用後者,當移動Web檔案時,不再需要修改配置。
   OLEDB位於應用程式與ODBC層之間。在ASP頁面中,ADO就是位於OLEDB之上的程式。調用ADO時,首先發送給OLEDB,然後再發送給ODBC層。可以直接連接到OLEDB層,這麼做後,將提高伺服器端的效能。怎麼直接連接到OLEDB呢?
   如果使用SQLServer 7,使用下面的代碼做為連接字串:
strConnString = "DSN='';DRIVER={SQL SERVER};" & _
           "UID=myuid;PWD=mypwd;" & _
           "DATABASE=MyDb;SERVER=MyServer;"
   最重要的參數就是“DRIVER=”部分。如果你想繞過ODBC而使用OLEDB來訪問SQL Server,使用下面的文法:
strConnString ="Provider=SQLOLEDB.1;Password=mypassword;" & _
            "Persist Security Info=True;User ID=myuid;" & _

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.