佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > EasyASP v1.5發(fā)布(包含數(shù)據(jù)庫操作類,原clsDbCtrl.asp)第1/2頁

EasyASP v1.5發(fā)布(包含數(shù)據(jù)庫操作類,原clsDbCtrl.asp)第1/2頁

熱門標(biāo)簽:Linux服務(wù)器 阿里云 Mysql連接數(shù)設(shè)置 銀行業(yè)務(wù) 電子圍欄 科大訊飛語音識別系統(tǒng) 服務(wù)器配置 團(tuán)購網(wǎng)站
而Easp類中提供了大量實(shí)用的ASP通用過程及方法,可以簡化大部分的ASP操作。目前只提供了VBScript版,JScript版將來可能會提供。
EasyASP v1.5 (2008-10-22更新)
新增功能:
1、將數(shù)據(jù)庫控制類(原clsDbCtrl.asp)封裝入Easp類,均通過Easp.db調(diào)用,也可獨(dú)立使用。
2、新增MSSQL存儲過程調(diào)用方法,可靈活調(diào)用存儲過程并返回返回值、記錄集及出參。
3、新增db.CreatConn方法,可以根據(jù)自定義的連接字符串連接數(shù)據(jù)庫。
4、新增db.Json方法,可以將數(shù)據(jù)庫記錄集按Json格式輸出。
5、新增db.Rand和db.RandStr方法,可以生成一個不重復(fù)的隨機(jī)數(shù)或者隨機(jī)字符串
6、新增數(shù)據(jù)庫操作各方法的簡寫方法,更節(jié)約書寫代碼時間。
7、在Easp類中新增大量的實(shí)用方法,如安全獲取值、防Sql注入、服務(wù)器端表單驗(yàn)證等。
其它更新:
1、優(yōu)化db.AutoId自動獲取編號,效率提高20倍以上,數(shù)據(jù)量越大越明顯。
2、修改db.OpenConn數(shù)據(jù)庫連接方法,更符合日常描述習(xí)慣。
3、修改db.GetRecord取記錄集方法,參數(shù)更少。修正條件使用數(shù)組報(bào)錯的Bug。
4、修改并優(yōu)化db.DeleteRecord刪除記錄方法,目前只有兩個參數(shù)了。
5、修改了錯誤調(diào)試方法,增加Debug全局屬性控制錯誤顯示。
更新說明:
以前寫了一個clsDbCtrl.asp數(shù)據(jù)庫控制類,收到一些反饋,還有朋友發(fā)來郵件告訴我一些改進(jìn)的方法,很感謝他們。而我在原帖的跟帖中看到一條留言說“有記參數(shù)的時間,SQL語句早都寫完了”,更是直接指出了其中的尷尬,的確,盡管VBS沒有arguments屬性,但用太多的參數(shù)也不是個好主意。所以我花了些時間把這個類的許多代碼都重寫了一下,在保證功能只能更強(qiáng)不能更弱的前提下,一個方法最多只有3個參數(shù)了。另外新增加了一個調(diào)用MSSQL存儲過程的方法,可以靈活的調(diào)用存儲過程并根據(jù)需要返回一個或多個記錄集、輸出參數(shù)及返回值,當(dāng)然,吸取教訓(xùn)了,這個方法只有兩個參數(shù)?,F(xiàn)在都封裝在這個新的名叫EasyASP的家伙中了,顧名思義,無非是想一切都簡單點(diǎn)。
另外還有一個更尷尬的,那就是VBScript并不是面向?qū)ο蟮恼Z言,所以這個類其實(shí)說穿了也只是一些過程和方法的封裝,方便使用而已,所以其中大部分的方法和過程都可以提出來單獨(dú)使用。當(dāng)然,如果有需要,也可以把它封裝成wsc或者dll組件使用。
=================================================================
使用說明
=================================================================
1、使用方法:
(1) Easp類的所有調(diào)用都已包含在easp.asp中,所以只需要在頁首引入該文件,如:
!--#include file="inc/easp/easp.asp" -->
或:
!--#include virtual="/inc/easp/easp.asp"-->
(2) 該類已經(jīng)實(shí)例化,無需再單獨(dú)實(shí)例化,直接使用Easp.前綴調(diào)用即可,如:
Easp.wn("Test String") 或 Easp.db.AutoId("Table:ID")
(3) 如要同時操作多個數(shù)據(jù)庫,請實(shí)例化新的easpdb對象,如:
Dim db2 : Set db2 = New EasyASP_db
db2.dbConn = db2.OpenConn(0,dbase,server)
2、參數(shù)約定:
(1) 數(shù)組參數(shù):由于VBScript沒有arguments屬性,不能使用動態(tài)參數(shù),所以,在本類涉及到數(shù)據(jù)庫數(shù)據(jù)的代碼中,使用了Array(數(shù)組)來達(dá)到這一效果。本類中的部分參數(shù)可以使用數(shù)組(參數(shù)說明中有注明),但使用數(shù)組時應(yīng)參照以下格式:
Array("Field1:Value1", "Field2:True", "Field3:100")
對,有點(diǎn)像json的格式,如果涉及到變量,那就這樣:
Array("Field1:" Value1, "Field2:" Value2, "Field3:" Value3)
可以這樣說,本類中的幾乎所有與數(shù)據(jù)庫字段相關(guān)的內(nèi)容都可以用以上的數(shù)組格式來設(shè)置條件或者是獲取內(nèi)容,包括調(diào)用存儲過程要傳遞的參數(shù)。而這個類里最大的優(yōu)點(diǎn)就是在使用時不用去考慮字段的類型,在字段后跟一個冒號,接著跟上相應(yīng)的值就行了。如果你經(jīng)常手寫ASP程序的話,你很快就會感受到運(yùn)用這種方式的魅力,除了數(shù)據(jù)類型不用考慮之外,它也很方便隨時添加和刪除條件。這里舉個例子說明這個用法:
比如添加新記錄的方法:
Easp.db.AddRecord "Table", Array("FieldsA:測試數(shù)據(jù)","FieldsB:"Now(),"FieldsC:True")
參數(shù)只有兩個,一個是表名,另一個就是這樣的數(shù)組參數(shù)。如果要改變數(shù)據(jù)庫結(jié)構(gòu),則修改上面的程序代碼就非常簡單了。
(2) 共用參數(shù)(用特殊符號分隔): 也是考慮到要盡量減少參數(shù),如果有些參數(shù)在很多時候都可以沒有的話,那就沒有必要專門為它增加一個參數(shù)。在本類里采用了特殊符號如冒號(:)分隔一個參數(shù)中的多個值來達(dá)到傳遞多個參數(shù)的效果。舉幾個例子說明一下,同時也可以預(yù)覽一下采用本類的一些優(yōu)勢:
比如建立MSSQL數(shù)據(jù)庫連接對象的方法:
Set Conn = Easp.db.Open(0,"Database","User:Password@ServerAddress")
很一目了然對不對,這里就用:和@分隔了幾個參數(shù)而放在同一個參數(shù)里了。另外如果是Access數(shù)據(jù)庫有密碼則在第3個參數(shù)中輸入就行了,沒有其它參數(shù)了。
再比如獲取記錄集的方法:
Set rs = Easp.db.GetRecord("Table:FieldsA,FieldsB,FieldsC:20","ID > 10","ID Desc")
其中第1個參數(shù)中包含了表名,要取的字段和要取的記錄數(shù),因?yàn)樽侄魏陀涗洈?shù)很多時候是可以省略的,所以俺索性把參數(shù)也省略了,這樣要記的參數(shù)要少很多滴。
再比如本類里有一個GetUrl()的獲取本頁面地址的方法,很多地方都見過是吧,但是本類里這個方法帶一個參數(shù),通過這個參數(shù)可以取得很多結(jié)果,看例子:
12下一頁閱讀全文

標(biāo)簽:江蘇 大理 棗莊 萍鄉(xiāng) 衡水 衢州 蚌埠 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《EasyASP v1.5發(fā)布(包含數(shù)據(jù)庫操作類,原clsDbCtrl.asp)第1/2頁》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    读书| 犍为县| 柳江县| 红桥区| 银川市| 日喀则市| 刚察县| 九寨沟县| 蕉岭县| 健康| 镇平县| 娱乐| 湘潭县| 仲巴县| 大悟县| 彝良县| 冀州市| 武陟县| 嘉峪关市| 关岭| 岫岩| 涿州市| 乌鲁木齐市| 当雄县| 商丘市| 西丰县| 温州市| 丰城市| 盘山县| 井陉县| 德令哈市| 扶绥县| 丽水市| 涿州市| 重庆市| 宿州市| 平阳县| 邵东县| 湘潭市| 札达县| 黄陵县|