編程人員講述ADO缺點及修復問題
大家在使用ADO過程中,發現了許多ADO缺點,建立并執行參數化查詢是一個非常簡單的過程。在數據訪問庫——如微軟的數據應用程序塊——的輔助下,這個過程可以進一步簡化。
參數化查詢的ADO缺點
說到編程,每種方法都有其優缺點,決定應用參數化查詢也不例外。它的一個主要的缺點在于:由于查詢被嵌入到應用程序代碼中,可能在幾個地方都以同樣的查詢結束。我可以建立一個存儲查詢的中心位置來消除這種重復。這個位置可以是一個XML文件、在應用程序中的一個帶公共靜態字符串成員的類、一個自定義的.NET屬性、或者是一個空文件。應用這些技巧,你就可以在執行前查找到所需的查詢。#t#
應用參數化查詢的另一個潛在問題是許多公司并不允許在其應用程序(以及數據層)中使用內聯SQL。我認為這是因為人們在談論將SQL插入應用程序代碼時,他們指的是特別(內聯)代碼,而不是參數化查詢。這樣的規則也使DBA對在SQL服務器上執行代碼有了更大的控制權,ADO缺點這對大型數據庫十分有利。
何時應使用參數化查詢?
在任何需要在SQL服務器上執行操作的情況下,你都可以應用參數化查詢。但是,參數化查詢主要應用于需要執行的創建、閱讀、更新與刪除(CRUD)操作。如果你在執行需要較長時間或由不同SQL語句構成的復雜操作,***將此操作保留在SQL服務器中。
雖然參數化查詢在許多情況下應用起來十分方便,但由于它可能會打亂你的應用程序代碼,所以我并不推薦你在復雜的數據操作邏輯中應用它。當你的應用程序代碼被打亂時,你必然會遇到嚴重的代碼維護問題。
在編寫數據訪問程序的許多情況下,ADO缺點與特別查詢與存儲過程相比,參數化進程不失為一個較好的選擇。參數化查詢介于其他兩種選擇之間,如果應用得當,能夠顯著提高開發效率。