日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

解析ASP與存儲(chǔ)過(guò)程(8)_ASP教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

推薦:解析ASP中的常用服務(wù)器檢測(cè)源碼
在寫(xiě)ASP網(wǎng)頁(yè)時(shí)常用的檢測(cè)代碼: 服務(wù)器現(xiàn)在時(shí)間: 引用 % =now %> 服務(wù)器CPU型號(hào): 引用 %=Request.ServerVariables(HTTP_UA_CPU)%> 當(dāng)前分辨率: 引用 &l

以下是ASP代碼:

'

以下為引用的內(nèi)容:

**調(diào)用返回多個(gè)記錄集的存儲(chǔ)過(guò)程**
DIM checklg,UserID,UserName,UserTel,UserMail
DIM MyComm,MyRst
UserID = 1
'checklogin()為自定義函數(shù),判斷訪問(wèn)者是否登錄
checklg = checklogin()
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm

.ActiveConnection = MyConStr 'MyConStr是數(shù)據(jù)庫(kù)連接字串
.CommandText = "getUserList" '指定存儲(chǔ)過(guò)程名
.CommandType = 4 '表明這是一個(gè)存儲(chǔ)過(guò)程
.Prepared = true '要求將SQL命令先行編譯
.Parameters.append .CreateParameter("@userid",3,1,4,UserID)
.Parameters.append .CreateParameter("@checklogin",11,1,1,checklg)
Set MyRst = .Execute
end with
Set MyComm = Nothing

'從第一個(gè)記錄集中取值
UserName = MyRst(0)
'從第二個(gè)記錄集中取值
if not MyRst is Nothing then
Set MyRst = MyRst.NextRecordset()
UserTel = MyRst(0)
UserMail = MyRst(1)
end if
Set MyRst = Nothing

以上代碼中,利用Recordset對(duì)象的NextRecordset方法,取得了存儲(chǔ)過(guò)程返回的多個(gè)記錄集。

至此,針對(duì)ASP調(diào)用存儲(chǔ)過(guò)程的各種情況,本文已做了較為全面的說(shuō)明。最后說(shuō)一下在一個(gè)ASP程序中,調(diào)用多個(gè)存儲(chǔ)過(guò)程的不同方法。

在一個(gè)ASP程序中,調(diào)用多個(gè)存儲(chǔ)過(guò)程至少有以下三種方法都是可行的:

1. 創(chuàng)建多個(gè)Command對(duì)象。

以下為引用的內(nèi)容:

DIM MyComm
Set MyComm = Server.CreateObject("ADODB.Command")
'調(diào)用存儲(chǔ)過(guò)程一
......
Set MyComm = Nothing
Set MyComm = Server.CreateObject("ADODB.Command")
'調(diào)用存儲(chǔ)過(guò)程二
......
Set MyComm = Nothing
......

2.只創(chuàng)建一個(gè)Command對(duì)象,結(jié)束一次調(diào)用時(shí),清除其參數(shù)

以下為引用的內(nèi)容:

DIM MyComm
Set MyComm = Server.CreateObject("ADODB.Command")
'調(diào)用存儲(chǔ)過(guò)程一
.....
'清除參數(shù)(假設(shè)有三個(gè)參數(shù))
MyComm.Parameters.delete 2
MyComm.Parameters.delete 1
MyComm.Parameters.delete 0
'調(diào)用存儲(chǔ)過(guò)程二并清除參數(shù)
......
Set MyComm = Nothing

此時(shí)要注意:清除參數(shù)的順序與參數(shù)聲明的順序相反,原因嘛,我也不知道。

3. 利用Parameters數(shù)據(jù)集合的Refresh方法重置Parameter對(duì)象

DIM MyComm
Set MyComm = Server.CreateObject("ADODB.Command")
'調(diào)用存儲(chǔ)過(guò)程一
.....
'重置Parameters數(shù)據(jù)集合中包含的所有Parameter對(duì)象
MyComm.Parameters.Refresh
'調(diào)用存儲(chǔ)過(guò)程二
.....
Set MyComm = Nothing

一般認(rèn)為,重復(fù)創(chuàng)建對(duì)象是效率較低的一種方法,但是經(jīng)測(cè)試(測(cè)試工具為Microsoft Application Center Test),結(jié)果出人意料:

方法2 >= 方法1 >> 方法3

方法2的運(yùn)行速度大于等于方法1(最多可高4%左右),這兩種方法的運(yùn)行速度遠(yuǎn)大于方法3(最多竟高達(dá)130%),所以建議在參數(shù)多時(shí),采用方法1,在參數(shù)較少時(shí),采用方法2。

花了一天的時(shí)間,終于把我對(duì)于在ASP中調(diào)用存儲(chǔ)過(guò)程的一些粗淺的經(jīng)驗(yàn)形成了文字。這其中,有些是我只知其果而不明其因的,有些可能是錯(cuò)誤的,但是,這些都是經(jīng)過(guò)我親身實(shí)踐的。各位看官批判地接受吧。有不同意見(jiàn),希望一定向我指明,先謝了。

分享:解析ASP中腳本執(zhí)行順序
如果機(jī)房馬上要關(guān)門(mén)了,或者你急著要和MM約會(huì),請(qǐng)直接跳到第四個(gè)自然段。 以下敘述的腳本包括服務(wù)器端腳本和客戶端的腳本,服務(wù)器端腳本指在服務(wù)器上運(yùn)行的那部分腳本,比如常見(jiàn)的Respon

共8頁(yè)上一頁(yè)12345678下一頁(yè)
來(lái)源:模板無(wú)憂//所屬分類:ASP教程/更新時(shí)間:2009-08-22
相關(guān)ASP教程