對于ASP的使用者來說,在數據庫操作上越簡單,就有更多的時間去考慮邏輯上和應用上的代碼,效率也會更高。今天俺在這里給大家提供一種數據庫操作的思路,這些代碼是俺在長期的ASP應用中不斷完成和修正的,也已經用它完成了很多項目了,應該說直接拿去用是沒有問題的。當然本人能力也有限,希望大家一起來討論。 說明:此帖代碼均是VBScript版本。另外最好你對手寫ASP已經有一定的基礎。 先簡單介紹一下俺這個類的一些特點:
使用方法: 1. 修改clsDbctrl.asp文件中的第1行為你自己的數據庫位置(修改方法參考下面的CreatConn函數說明)。如需連接多個數據庫可自行添加,格式相同。 2. 在你新建的asp文件中包含此asp文件。如: 3.使用如下代碼應用此類: <% 或者(一個或者多個數據庫連接): <% 4.具體操作的例子可以參考各函數說明內的代碼示例。 方法和屬性概覽(詳細用法及例子在下面): 引用: 參數約定: 由于ASP沒有Arguments對象,不能使用動態參數,所以,在本類的代碼中,使用了Array(數組)來達到這一效果。本類中的部分參數可以使用數組(參數說明中有注明),但使用數組時應參照以下格式: Array("Field1:Value1", "Field2:True", "Field3:100") 對,有點像json的格式,如果涉及到變量,那就這樣: Array("Field1:" & Value1, "Field2:" & Value2, "Field3:" & Value3) 可以這樣說,本類中的幾乎所有與數據庫字段相關的內容都可以用以上的數組格式來設置條件或者是獲取內容。而這里最大的特點就是在使用時不用去考慮字段的類型,在字段后跟一個冒號,接著跟上相應的值就行了。如果你經常手寫ASP程序的話,你很快就會感受到運用這種方式的魅力,除了數據類型不用考慮之外,它也很方便隨時添加和刪除條件。如果你還不明白怎么用的話沒關系,下面有很多例子可以說明這個問題。 要把ASP的數據庫操作封裝起來其實并不難,相信大家以前自己也做過類似的代碼或是借用過其他人的封裝好的代碼。但是就如各位知道的一樣,使用封裝后的代碼一旦出錯,排錯是一個比較麻煩的事情,一般說來,封裝后操作越簡單的排錯也越復雜。俺在寫這些代碼的時候已經盡我所能考慮到如果出錯的話如何去排查錯誤,在盡可能簡化用戶操作數據庫的代碼的同時可以隨時輸出sql語句排查錯誤。 最后需要說明一點,本文所涉及的ASP數據庫操作并不適合大型數據,如你所知,操作大型數據最好還是使用存儲過程之類的東東比較好,以后俺會考慮把對存儲過程的操作也封裝進去。還有一個效率問題,要追求高效率的話,用ASP還是應該考慮COM+等,所以再次聲明,本類適用的對象是中小型ASP項目。 好了,下面奉上詳細使用說明: 一.數據庫連接 考慮到大多數人的使用習慣,在數據庫連接上使用了公共過程,所以需要大家在代碼里自行修改,如果你已經建立了數據庫連接,把這幾行注釋掉就行了。代碼中內置了MSSql,Access,MySQL,Oracle4種數據庫的連接方式,當然你也可以自行在源代碼中增加或刪除。修改例如: Dim a : a = CreatConn(0, "TestData", "localhost", "username", "userpassword") 說明一下,第1個參數可以是字符串。如果是使用Access,則第2個參數輸入相對路徑和絕對路徑都是可以的,如有密碼也可以在第5個參數中輸入,如: Dim c : c = CreatConn("ACCESS", "E:\MyWeb\Data\%TestDB%.mdb", "", "", "mdbpassword") 相關函數: 原 型:CreatConn(dbType, strDB, strServer, strUid, strPwd) 原 型:Oc(connStr) 原 型:Co(obj) 原 型:OpenConn 原 型:CloseConn |