ASP設計常見問題及解答精要-2 |
作者:佚名 發布時間:2009-06-22 瀏覽:2138次 |
9、問題:我有沒有必要在每一個ASP文件中使用“Option Explicit”? 答:在實際應用中,VBScript變量的概念已經模糊了,允許直接使用變量,而不用Dim聲明變量,但這并不是一個好習慣,容易造成程序錯誤,因為可能重復定義一個變量。我們可以在程序中使用Option Explicit語句,這樣在使用一個變量的時候,必須先聲明它,如果使用了沒有經過聲明的變量,運行時,程序就會出錯。 實踐證明,ASP文件中使用“Option Explicit”可以使得程序出錯機會降到最少,并且會大大提升整體性能。 10、問題:運行ASP文件時有什么安全措施? 答:ASP提供了很好的代碼保護機制,所有的ASP代碼都在服務器端執行而只返回給客戶端代碼執行結果。但仍不排除惡意人士對Web服務器的刻意破壞,所以在編寫ASP文件時更要注意安全問題。 雖然在ASP中引入文件以inc作為擴展名,在這里仍建議以ASP作為引文件的擴展名。當這些代碼在安全機制不好的Web Server上運行時,只需在地址欄上輸入引入文件的地址(inc為擴展名),就可以瀏覽該引入文件的內容,這是由于在Web Server上,如果沒有定義好解析某類型(比如inc)的動態連接庫時,該文件以源碼方式顯示。 另外,不要把數據庫文件放在網站結構內部,這樣,當惡意人士獲取數據庫路徑后,就可以輕易獲取該數據庫,進而肆意更改數據庫內容。比較好的做法是,為數據庫建立數據源名稱DSN(Date Source Name),在DSN中存儲了有關連接到指定數據提供者的信息,包括:“數據庫的物理位置,用于訪問數據庫的驅動程序的類型,訪問數據庫的驅動程序所需要的任何其他參數”,在進行數據庫訪問時可以直接訪問該DSN。 11、問題:評介Web數據庫管理系統時,應該考慮哪些問題? 答:在評價一個Web數據庫管理系統時,必須考慮到三方面的問題:多用戶問題;所建立的Web數據庫應該是關系型的;數據庫的安全性問題。 12、問題:ADO是什么,它是如何操作數據庫的? 答:ADO的全名是ActiveX Data Object(ActiveX數據對象),是一組優化的訪問數據庫的專用對象集,它為ASP提供了完整的站點數據庫解決方案,它作用在服務器端,提供含有數據庫信息的主頁內容,通過執行SQL命令,讓用戶在瀏覽器畫面中輸入,更新和刪除站點數據庫的信息。 ADO主要包括Connection,Recordset和Command三個對象, 它們的主要功能如下: ·Connection對象:負責打開或連接數據庫文件; ·Recordset對象:存取數據庫的內容; ·Command對象:對數據庫下達行動查詢指令,以及執行SQL Server的存儲過程。 13、問題:使用Recordset對象和Command對象來訪問數據庫的區別在哪里? 答:Recordset對象會要求數據庫傳送所有的數據,那么數據量很大的時候就會造成網絡的阻塞和數據庫服務器的負荷過重,因此整體的執行效率會降低。 利用Command對象直接調用SQL語句,所執行的操作是在數據庫服務器中進行的,顯然會有很高的執行效率。特別是在服務器端執行創建完成的存儲過程,可以降低網絡流量,另外,由于事先進行了語法分析,可以提高整體的執行效率。 14、問題:是否必須為每一個Recordset對象創建一個Connection對象? 答:可以同時對不同的Recordset對象使用相同的Connection對象,以節省資源。 15、問題:什么是數據庫管理系統(DBMS)? 答:數據庫為了保證存儲在其中的數據的安全和一致,必須有一組軟件來完成相應的管理任務,這組軟件就是數據庫管理系統,簡稱DBMS,DBMS隨系統的不同而不同,但是一般來說,它應該包括以下幾方面的內容: 數據庫描述功能:定義數據庫的全局邏輯結構,局部邏輯結構和其他各種數據庫對象; 數據庫管理功能:包括系統配置與管理,數據存取與更新管理,數據完整性管理和數據安全性管理; 數據庫的查詢和操縱功能:該功能包括數據庫檢索和修改; 數據庫維護功能:包括數據引入引出管理,數據庫結構維護,數據恢復功能和性能監測。 為了提高數據庫系統的開發效率,現代數據庫系統除了DBMS之外,還提供了各種支持應用開發的工具。 16、問題:當前流行的WEB數據庫管理系統有哪些? 答:當前流行的Web數據庫管理系統有微軟的SQL Server、Oracle、DB2、Sybase,小規模的企業多使用Access。 |