瀛楃 | 杞箟鍚庣殑瀛楃 | ||
---|---|---|---|
HTML瀛楃 | 瀛楃緙栫爜 | ||
and(鍜? | & | & | & |
鍗曞紩鍙?/td> | ' | ' | ' |
鍙屽紩鍙?/td> | " | " | " |
澶т簬鍙?/td> | > | > | > |
灝忎簬鍙?/td> | < | < | < |
瀛樺偍榪囩▼灝辨槸浣滀負鍙墽琛屽璞″瓨鏀懼湪鏁版嵁搴撲腑鐨勪竴涓垨澶氫釜SQL鍛戒護銆?BR> 瀹氫箟鎬繪槸寰堟娊璞°傚瓨鍌ㄨ繃紼嬪叾瀹炲氨鏄兘瀹屾垚涓瀹氭搷浣滅殑涓緇凷QL璇彞錛屽彧涓嶈繃榪欑粍璇彞鏄斁鍦ㄦ暟鎹簱涓殑(榪欓噷鎴戜滑鍙皥SQL Server)銆傚鏋滄垜浠氳繃鍒涘緩瀛樺偍榪囩▼浠ュ強鍦ˋSP涓皟鐢ㄥ瓨鍌ㄨ繃紼嬶紝灝卞彲浠ラ伩鍏嶅皢SQL璇彞鍚孉SP浠g爜娣鋒潅鍦ㄤ竴璧楓傝繖鏍峰仛鐨勫ソ澶勮嚦灝戞湁涓変釜錛?BR> 絎竴銆佸ぇ澶ф彁楂樻晥鐜囥傚瓨鍌ㄨ繃紼嬫湰韜殑鎵ц閫熷害闈炲父蹇紝鑰屼笖錛岃皟鐢ㄥ瓨鍌ㄨ繃紼嬪彲浠ュぇ澶у噺灝戝悓鏁版嵁搴撶殑浜や簰嬈℃暟銆?BR> 絎簩銆佹彁楂樺畨鍏ㄦс傚亣濡傚皢SQL璇彞娣峰悎鍦ˋSP浠g爜涓紝涓鏃︿唬鐮佸け瀵嗭紝鍚屾椂涔熷氨鎰忓懗鐫搴撶粨鏋勫け瀵嗐?BR> 絎笁銆佹湁鍒╀簬SQL璇彞鐨勯噸鐢ㄣ?BR>
鍦ˋSP涓紝涓鑸氳繃command瀵硅薄璋冪敤瀛樺偍榪囩▼錛屾牴鎹笉鍚屾儏鍐碉紝鏈枃涔熶粙緇嶅叾瀹冭皟鐢ㄦ柟娉曘備負浜嗘柟渚胯鏄庯紝鏍規嵁瀛樺偍榪囩▼鐨勮緭鍏ヨ緭鍑猴紝浣滀互涓嬬畝鍗曞垎綾伙細
1. 鍙繑鍥炲崟涓璁板綍闆嗙殑瀛樺偍榪囩▼
鍋囪鏈変互涓嬪瓨鍌ㄨ繃紼?鏈枃鐨勭洰鐨勪笉鍦ㄤ簬璁茶堪T-SQL璇硶錛屾墍浠ュ瓨鍌ㄨ繃紼嬪彧緇欏嚭浠g爜錛屼笉浣滆鏄?錛?/P>
/*SP1*/
CREATE PROCEDURE dbo.getUserList
as
set nocount on
begin
select * from dbo.[userinfo]
end
go
浠ヤ笂瀛樺偍榪囩▼鍙栧緱userinfo琛ㄤ腑鐨勬墍鏈夎褰曪紝榪斿洖涓涓褰曢泦銆傞氳繃command瀵硅薄璋冪敤璇ュ瓨鍌ㄨ繃紼嬬殑ASP浠g爜濡備笅:
'**閫氳繃Command瀵硅薄璋冪敤瀛樺偍榪囩▼**
DIM MyComm,MyRst
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
MyComm.CommandText = "getUserList" '鎸囧畾瀛樺偍榪囩▼鍚?/FONT>
MyComm.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
MyComm.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
Set MyRst = MyComm.Execute
Set MyComm = Nothing
瀛樺偍榪囩▼鍙栧緱鐨勮褰曢泦璧嬬粰MyRst錛屾帴涓嬫潵錛屽彲浠ュMyRst榪涜鎿嶄綔銆?BR> 鍦ㄤ互涓婁唬鐮佷腑錛孋ommandType灞炴ц〃鏄庤姹傜殑綾誨瀷錛屽彇鍊煎強璇存槑濡備笅錛?BR> -1 琛ㄦ槑CommandText鍙傛暟鐨勭被鍨嬫棤娉曠‘瀹?BR> 1 琛ㄦ槑CommandText鏄竴鑸殑鍛戒護綾誨瀷
2 琛ㄦ槑CommandText鍙傛暟鏄竴涓瓨鍦ㄧ殑琛ㄥ悕縐?BR> 4 琛ㄦ槑CommandText鍙傛暟鏄竴涓瓨鍌ㄨ繃紼嬬殑鍚嶇О
榪樺彲浠ラ氳繃Connection瀵硅薄鎴朢ecordset瀵硅薄璋冪敤瀛樺偍榪囩▼錛屾柟娉曞垎鍒涓嬶細
'**閫氳繃Connection瀵硅薄璋冪敤瀛樺偍榪囩▼**
DIM MyConn,MyRst
Set MyConn = Server.CreateObject("ADODB.Connection")
MyConn.open MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
Set MyRst = MyConn.Execute("getUserList",0,4) '鏈鍚庝竴涓弬鏂惈涔夊悓CommandType
Set MyConn = Nothing
'**閫氳繃Recordset瀵硅薄璋冪敤瀛樺偍榪囩▼**
DIM MyRst
Set MyRst = Server.CreateObject("ADODB.Recordset")
MyRst.open "getUserList",MyConStr,0,1,4
'MyConStr鏄暟鎹簱榪炴帴瀛椾覆,鏈鍚庝竴涓弬鏂惈涔変笌CommandType鐩稿悓
2. 娌℃湁杈撳叆杈撳嚭鐨勫瓨鍌ㄨ繃紼?BR> 璇風湅浠ヤ笅瀛樺偍榪囩▼錛?/P>
/*SP2*/
CREATE PROCEDURE dbo.delUserAll
as
set nocount on
begin
delete from dbo.[userinfo]
end
go
璇ュ瓨鍌ㄨ繃紼嬪垹鍘籾serinfo琛ㄤ腑鐨勬墍鏈夎褰曪紝娌℃湁浠諱綍杈撳叆鍙婅緭鍑猴紝璋冪敤鏂規硶涓庝笂闈㈣榪囩殑鍩烘湰鐩稿悓錛屽彧鏄笉鐢ㄥ彇寰楄褰曢泦錛?/P>
'**閫氳繃Command瀵硅薄璋冪敤瀛樺偍榪囩▼**
DIM MyComm
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
MyComm.CommandText = "delUserAll" '鎸囧畾瀛樺偍榪囩▼鍚?BR> MyComm.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?BR> MyComm.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
MyComm.Execute '姝ゅ涓嶅繀鍐嶅彇寰楄褰曢泦
Set MyComm = Nothing
褰撶劧涔熷彲閫氳繃Connection瀵硅薄鎴朢ecordset瀵硅薄璋冪敤姝ょ被瀛樺偍榪囩▼錛屼笉榪囧緩绔婻ecordset瀵硅薄鏄負浜嗗彇寰楄褰曢泦錛屽湪娌℃湁榪斿洖璁板綍闆嗙殑鎯呭喌涓嬶紝榪樻槸鍒╃敤Command瀵硅薄鍚с?/P>
3. 鏈夎繑鍥炲肩殑瀛樺偍榪囩▼
鍦ㄨ繘琛岀被浼糞P2鐨勬搷浣滄椂錛屽簲鍏呭垎鍒╃敤SQL Server寮哄ぇ鐨勪簨鍔″鐞嗗姛鑳斤紝浠ョ淮鎶ゆ暟鎹殑涓鑷存с傚茍涓旓紝鎴戜滑鍙兘闇瑕佸瓨鍌ㄨ繃紼嬭繑鍥炴墽琛屾儏鍐碉紝涓烘錛屽皢SP2淇敼濡備笅錛?/P>
/*SP3*/
CREATE PROCEDURE dbo.delUserAll
as
set nocount on
begin
BEGIN TRANSACTION
delete from dbo.[userinfo]
IF @@error=0
begin
COMMIT TRANSACTION
return 1
end
ELSE
begin
ROLLBACK TRANSACTION
return 0
end
return
end
go
浠ヤ笂瀛樺偍榪囩▼錛屽湪delete欏哄埄鎵ц鏃訛紝榪斿洖1錛屽惁鍒欒繑鍥?錛屽茍榪涜鍥炴粴鎿嶄綔銆備負浜嗗湪ASP涓彇寰楄繑鍥炲鹼紝闇瑕佸埄鐢≒arameters闆嗗悎鏉ュ0鏄庡弬鏁幫細
'**璋冪敤甯︽湁榪斿洖鍊肩殑瀛樺偍榪囩▼騫跺彇寰楄繑鍥炲?*
DIM MyComm,MyPara
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
MyComm.CommandText = "delUserAll" '鎸囧畾瀛樺偍榪囩▼鍚?BR> MyComm.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
MyComm.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
'澹版槑榪斿洖鍊?BR> Set Mypara = MyComm.CreateParameter("RETURN",2,4)
MyComm.Parameters.Append MyPara
MyComm.Execute
'鍙栧緱榪斿洖鍊?BR> DIM retValue
retValue = MyComm(0) '鎴杛etValue = MyComm.Parameters(0)
Set MyComm = Nothing
鍦∕yComm.CreateParameter("RETURN",2,4)涓紝鍚勫弬鏁扮殑鍚箟濡備笅錛?BR> 絎竴涓弬鏁?"RETURE")涓哄弬鏁板悕銆傚弬鏁板悕鍙互浠繪剰璁懼畾錛屼絾涓鑸簲涓庡瓨鍌ㄨ繃紼嬩腑澹版槑鐨勫弬鏁板悕鐩稿悓銆傛澶勬槸榪斿洖鍊鹼紝鎴戜範鎯笂璁句負"RETURE"錛?BR> 絎簩涓弬鏁?2)錛岃〃鏄庤鍙傛暟鐨勬暟鎹被鍨嬶紝鍏蜂綋鐨勭被鍨嬩唬鐮佽鍙傞槄ADO鍙傝冿紝浠ヤ笅緇欏嚭甯哥敤鐨勭被鍨嬩唬鐮侊細
adBigInt: 20 ;
adBinary : 128 ;
adBoolean: 11 ;
adChar: 129 ;
adDBTimeStamp: 135 ;
adEmpty: 0 ;
adInteger: 3 ;
adSmallInt: 2 ;
adTinyInt: 16 ;
adVarChar: 200 ;
瀵逛簬榪斿洖鍊鹼紝鍙兘鍙栨暣褰紝涓?1鍒?99涓轟繚鐣欏鹼紱
絎笁涓弬鏁?4)錛岃〃鏄庡弬鏁扮殑鎬ц川錛屾澶?琛ㄦ槑榪欐槸涓涓繑鍥炲箋傛鍙傛暟鍙栧肩殑璇存槑濡備笅錛?BR> 0 : 綾誨瀷鏃犳硶紜畾錛?1: 杈撳叆鍙傛暟錛?: 杈撳叆鍙傛暟錛?錛氳緭鍏ユ垨杈撳嚭鍙傛暟錛?: 榪斿洖鍊?BR>
浠ヤ笂緇欏嚭鐨凙SP浠g爜錛屽簲璇ヨ鏄畬鏁寸殑浠g爜錛屼篃鍗蟲渶澶嶆潅鐨勪唬鐮侊紝鍏跺疄
Set Mypara = MyComm.CreateParameter("RETURN",2,4)
MyComm.Parameters.Append MyPara
鍙互綆鍖栦負
MyComm.Parameters.Append MyComm.CreateParameter("RETURN",2,4)
鐢氳嚦榪樺彲浠ョ戶緇畝鍖栵紝紼嶅悗浼氬仛璇存槑銆?BR> 瀵逛簬甯﹀弬鏁扮殑瀛樺偍榪囩▼錛屽彧鑳戒嬌鐢–ommand瀵硅薄璋冪敤(涔熸湁璧勬枡璇村彲閫氳繃Connection瀵硅薄鎴朢ecordset瀵硅薄璋冪敤錛屼絾鎴戞病鏈夎瘯鎴愯繃)銆?/P>
4. 鏈夎緭鍏ュ弬鏁板拰杈撳嚭鍙傛暟鐨勫瓨鍌ㄨ繃紼?/STRONG>
榪斿洖鍊煎叾瀹炴槸涓縐嶇壒孌婄殑杈撳嚭鍙傛暟銆傚湪澶у鏁版儏鍐典笅錛屾垜浠敤鍒扮殑鏄悓鏃舵湁杈撳叆鍙婅緭鍑哄弬鏁扮殑瀛樺偍榪囩▼錛屾瘮濡傛垜浠兂鍙栧緱鐢ㄦ埛淇℃伅琛ㄤ腑錛屾煇ID鐢ㄦ埛鐨勭敤鎴峰悕錛岃繖鏃跺欙紝鏈変竴涓緭鍏ュ弬鏁?---鐢ㄦ埛ID錛屽拰涓涓緭鍑哄弬鏁?---鐢ㄦ埛鍚嶃傚疄鐜拌繖涓鍔熻兘鐨勫瓨鍌ㄨ繃紼嬪涓嬶細
/*SP4*/
CREATE PROCEDURE dbo.getUserName
@UserID int,
@UserName varchar(40) output
as
set nocount on
begin
if @UserID is null return
select @UserName=username
from dbo.[userinfo]
where userid=@UserID
return
end
go
璋冪敤璇ュ瓨鍌ㄨ繃紼嬬殑ASP浠g爜濡備笅錛?/P>
'**璋冪敤甯︽湁杈撳叆杈撳嚭鍙傛暟鐨勫瓨鍌ㄨ繃紼?*
DIM MyComm,UserID,UserName
UserID = 1
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
MyComm.CommandText = "getUserName" '鎸囧畾瀛樺偍榪囩▼鍚?BR> MyComm.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
MyComm.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
'澹版槑鍙傛暟
MyComm.Parameters.append MyComm.CreateParameter("@UserID",3,1,4,UserID)
MyComm.Parameters.append MyComm.CreateParameter("@UserName",200,2,40)
MyComm.Execute
'鍙栧緱鍑哄弬
UserName = MyComm(1)
Set MyComm = Nothing
鍦ㄤ互涓婁唬鐮佷腑錛屽彲浠ョ湅鍒幫紝涓庡0鏄庤繑鍥炲間笉鍚岋紝澹版槑杈撳叆鍙傛暟鏃墮渶瑕?涓弬鏁幫紝澹版槑杈撳嚭鍙傛暟鏃墮渶瑕?涓弬鏁般傚0鏄庤緭鍏ュ弬鏁版椂5涓弬鏁板垎鍒負錛?FONT color=#0000ff>鍙傛暟鍚嶃佸弬鏁版暟鎹被鍨嬨佸弬鏁扮被鍨嬨佹暟鎹暱搴︺佸弬鏁板?/FONT>銆傚0鏄庤緭鍑哄弬鏁版椂錛屾病鏈夋渶鍚庝竴涓弬鏁幫細鍙傛暟鍊箋?BR> 闇瑕佺壒鍒敞鎰忕殑鏄細鍦ㄥ0鏄庡弬鏁版椂錛岄『搴忎竴瀹氳涓庡瓨鍌ㄨ繃紼嬩腑瀹氫箟鐨勯『搴忕浉鍚岋紝鑰屼笖鍚勫弬鏁扮殑鏁版嵁綾誨瀷銆侀暱搴︿篃瑕佷笌瀛樺偍榪囩▼涓畾涔夌殑鐩稿悓銆?BR> 濡傛灉瀛樺偍榪囩▼鏈夊涓弬鏁幫紝ASP浠g爜浼氭樉寰楃箒鐞愶紝鍙互浣跨敤with鍛戒護綆鍖栦唬鐮侊細
'**璋冪敤甯︽湁杈撳叆杈撳嚭鍙傛暟鐨勫瓨鍌ㄨ繃紼?綆鍖栦唬鐮?** '**澶氭璋冪敤鍚屼竴瀛樺偍榪囩▼** 閫氳繃浠ヤ笂浠g爜鍙互鐪嬪嚭錛?FONT color=#0000ff>閲嶅璋冪敤鍚屼竴瀛樺偍榪囩▼鏃訛紝鍙渶涓哄煎彂鐢熸敼鍙樼殑杈撳叆鍙傛暟閲嶆柊璧嬪煎嵆鍙?/FONT>錛岃繖涓鏂規硶鍦ㄦ湁澶氫釜杈撳叆杈撳嚭鍙傛暟錛屼笖姣忔璋冪敤鏃跺彧鏈変竴涓緭鍏ュ弬鏁扮殑鍊煎彂鐢熷彉鍖栨椂錛屽彲浠ュぇ澶у噺灝戜唬鐮侀噺銆?/P>
/*SP5*/ '**璋冪敤鍚屾椂鍏鋒湁榪斿洖鍊箋佽緭鍏ュ弬鏁般佽緭鍑哄弬鏁扮殑瀛樺偍榪囩▼** /*SP6*/ --紜畾鎬婚〉鏁?/FONT> --紜畾褰撳墠欏電殑濮嬫湯璁板綍 --鍙栧綋鍓嶉〉璁板綍 --鍒犻櫎涓存椂琛?/FONT> --榪斿洖璁板綍鎬繪暟 鍦ㄤ笂闈㈢殑瀛樺偍榪囩▼涓紝杈撳叆褰撳墠欏靛彿鍙婃瘡欏佃褰曟暟錛岃繑鍥炲綋鍓嶉〉鐨勮褰曢泦錛屾婚〉鏁板強璁板綍鎬繪暟銆備負浜嗘洿鍏峰吀鍨嬫э紝灝嗚褰曟繪暟浠ヨ繑鍥炲肩殑褰㈠紡榪斿洖銆備互涓嬫槸璋冪敤璇ュ瓨鍌ㄨ繃紼嬬殑ASP浠g爜(鍏蜂綋鐨勫垎欏墊搷浣滅暐鍘?: '**璋冪敤鍒嗛〉瀛樺偍榪囩▼** '浠ヤ笅鏄劇ず璁板綍 瀵逛簬浠ヤ笂浠g爜錛屽彧鏈変竴鐐歸渶瑕佽鏄庯細鍚屾椂榪斿洖璁板綍闆嗗拰鍙傛暟鏃訛紝鑻ヨ鍙栧緱鍙傛暟錛岄渶鍏堝皢璁板綍闆嗗叧闂紝浣跨敤璁板綍闆嗘椂鍐嶅皢鍏舵墦寮銆?/P>
/*SP7*/ 浠ヤ笅鏄疉SP浠g爜錛?/P>
'**璋冪敤榪斿洖澶氫釜璁板綍闆嗙殑瀛樺偍榪囩▼** '浠庣涓涓褰曢泦涓彇鍊?/FONT> 浠ヤ笂浠g爜涓紝鍒╃敤Recordset瀵硅薄鐨凬extRecordset鏂規硶錛屽彇寰椾簡瀛樺偍榪囩▼榪斿洖鐨勫涓褰曢泦銆?/P>
2. 鍙垱寤轟竴涓狢ommand瀵硅薄錛岀粨鏉熶竴嬈¤皟鐢ㄦ椂錛屾竻闄ゅ叾鍙傛暟 DIM MyComm 姝ゆ椂瑕佹敞鎰忥細娓呴櫎鍙傛暟鐨勯『搴忎笌鍙傛暟澹版槑鐨勯『搴忕浉鍙嶏紝鍘熷洜鍢涳紝鎴戜篃涓嶇煡閬撱?/P>
3. 鍒╃敤Parameters鏁版嵁闆嗗悎鐨凴efresh鏂規硶閲嶇疆Parameter瀵硅薄 DIM MyComm 鑺變簡涓澶╃殑鏃墮棿錛岀粓浜庢妸鎴戝浜庡湪ASP涓皟鐢ㄥ瓨鍌ㄨ繃紼嬬殑涓浜涚矖嫻呯殑緇忛獙褰㈡垚浜嗘枃瀛椼傝繖鍏朵腑錛屾湁浜涙槸鎴戝彧鐭ュ叾鏋滆屼笉鏄庡叾鍥犵殑錛屾湁浜涘彲鑳芥槸閿欒鐨勶紝浣嗘槸錛岃繖浜涢兘鏄粡榪囨垜浜茶韓瀹炶返鐨勩傚悇浣嶇湅瀹樻壒鍒ゅ湴鎺ュ彈鍚с傛湁涓嶅悓鎰忚錛屽笇鏈涗竴瀹氬悜鎴戞寚鏄庯紝鍏堣阿浜嗐?/P>
DIM MyComm,UserID,UserName
UserID = 1
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
.CommandText = "getUserName" '鎸囧畾瀛樺偍榪囩▼鍚?BR> .CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
.Parameters.append .CreateParameter("@UserID",3,1,4,UserID)
.Parameters.append .CreateParameter("@UserName",200,2,40)
.Execute
end with
UserName = MyComm(1)
Set MyComm = Nothing
鍋囧鎴戜滑瑕佸彇寰桰D涓?鍒?0錛?0浣嶇敤鎴風殑鐢ㄦ埛鍚嶏紝鏄笉鏄鍒涘緩10嬈ommand瀵硅薄鍛紵涓嶆槸鐨勩傚鏋滈渶瑕佸嬈¤皟鐢ㄥ悓涓瀛樺偍榪囩▼錛屽彧闇鏀瑰彉杈撳叆鍙傛暟錛屽氨浼氬緱鍒頒笉鍚岀殑杈撳嚭錛?/P>
DIM MyComm,UserID,UserName
UserName = ""
Set MyComm = Server.CreateObject("ADODB.Command")
for UserID = 1 to 10
with MyComm
.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
.CommandText = "getUserName" '鎸囧畾瀛樺偍榪囩▼鍚?BR> .CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
if UserID = 1 then
.Parameters.append .CreateParameter("@UserID",3,1,4,UserID)
.Parameters.append .CreateParameter("@UserName",200,2,40)
.Execute
else
'閲嶆柊緇欏叆鍙傝祴鍊?姝ゆ椂鍙傛暟鍊間笉鍙戠敓鍙樺寲鐨勫叆鍙備互鍙婂嚭鍙備笉蹇呴噸鏂板0鏄?
.Parameters("@UserID") = UserID
.Execute
end if
end with
UserName = UserName + MyComm(1) + "," '涔熻浣犲枩嬈㈢敤鏁扮粍瀛樺偍
next
Set MyComm = Nothing
5. 鍚屾椂鍏鋒湁榪斿洖鍊箋佽緭鍏ュ弬鏁般佽緭鍑哄弬鏁扮殑瀛樺偍榪囩▼
鍓嶉潰璇磋繃錛屽湪璋冪敤瀛樺偍榪囩▼鏃訛紝澹版槑鍙傛暟鐨勯『搴忚涓庡瓨鍌ㄨ繃紼嬩腑瀹氫箟鐨勯『搴忕浉鍚屻傝繕鏈変竴鐐硅鐗瑰埆娉ㄦ剰錛?FONT color=#0000ff>濡傛灉瀛樺偍榪囩▼鍚屾椂鍏鋒湁榪斿洖鍊間互鍙婅緭鍏ャ佽緭鍑哄弬鏁幫紝榪斿洖鍊艱鏈鍏堝0鏄?/FONT>銆?BR> 涓轟簡婕旂ず榪欑鎯呭喌涓嬬殑璋冪敤鏂規硶錛屾垜浠敼鍠勪竴涓嬩笂闈㈢殑渚嬪瓙銆傝繕鏄彇寰桰D涓?鐨勭敤鎴風殑鐢ㄦ埛鍚嶏紝浣嗘槸鏈夊彲鑳借鐢ㄦ埛涓嶅瓨鍦?璇ョ敤鎴峰凡鍒犻櫎錛岃寀serid鏄嚜澧為暱鐨勫瓧孌?銆傚瓨鍌ㄨ繃紼嬫牴鎹敤鎴峰瓨鍦ㄤ笌鍚︼紝榪斿洖涓嶅悓鐨勫箋傛鏃訛紝瀛樺偍榪囩▼鍜孉SP浠g爜濡備笅錛?/P>
CREATE PROCEDURE dbo.getUserName
--涓轟簡鍔犳繁瀵?欏哄簭"鐨勫嵃璞★紝灝嗕互涓嬩袱鍙傛暟鐨勫畾涔夐『搴忛鍊掍竴涓?BR> @UserName varchar(40) output,
@UserID int
as
set nocount on
begin
if @UserID is null return
select @UserName=username
from dbo.[userinfo]
where userid=@UserID
if @@rowcount>0
return 1
else
return 0
return
end
go
DIM MyComm,UserID,UserName
UserID = 1
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
.CommandText = "getUserName" '鎸囧畾瀛樺偍榪囩▼鍚?/FONT>
.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
'榪斿洖鍊艱鏈鍏堣澹版槑
.Parameters.Append .CreateParameter("RETURN",2,4)
'浠ヤ笅涓ゅ弬鏁扮殑澹版槑欏哄簭涔熷仛鐩稿簲棰犲?BR> .Parameters.append .CreateParameter("@UserName",200,2,40)
.Parameters.append .CreateParameter("@UserID",3,1,4,UserID)
.Execute
end with
if MyComm(0) = 1 then
UserName = MyComm(1)
else
UserName = "璇ョ敤鎴蜂笉瀛樺湪"
end if
Set MyComm = Nothing
6. 鍚屾椂榪斿洖鍙傛暟鍜岃褰曢泦鐨勫瓨鍌ㄨ繃紼?/STRONG>
鏈夋椂鍊欙紝鎴戜滑闇瑕佸瓨鍌ㄨ繃紼嬪悓鏃惰繑鍥炲弬鏁板拰璁板綍闆嗭紝姣斿鍦ㄥ埄鐢ㄥ瓨鍌ㄨ繃紼嬪垎欏墊椂錛岃鍚屾椂榪斿洖璁板綍闆嗕互鍙婃暟鎹婚噺絳夊弬鏁般備互涓嬬粰鍑轟竴涓繘琛屽垎欏靛鐞嗙殑瀛樺偍榪囩▼錛?/P>
CREATE PROCEDURE dbo.getUserList
@iPageCount int OUTPUT, --鎬婚〉鏁?BR> @iPage int, --褰撳墠欏靛彿
@iPageSize int --姣忛〉璁板綍鏁?BR> as
set nocount on
begin
--鍒涘緩涓存椂琛?/FONT>
create table #t (ID int IDENTITY, --鑷瀛楁
userid int,
username varchar(40))
--鍚戜復鏃惰〃涓啓鍏ユ暟鎹?BR> insert into #t
select userid,username from dbo.[UserInfo]
order by userid
--鍙栧緱璁板綍鎬繪暟
declare @iRecordCount int
set @iRecordCount = @@rowcount
IF @iRecordCount%@iPageSize=0
SET @iPageCount=CEILING(@iRecordCount/@iPageSize)
ELSE
SET @iPageCount=CEILING(@iRecordCount/@iPageSize)+1
--鑻ヨ姹傜殑欏靛彿澶т簬鎬婚〉鏁幫紝鍒欐樉紺烘渶鍚庝竴欏?/FONT>
IF @iPage > @iPageCount
SELECT @iPage = @iPageCount
DECLARE @iStart int --start record
DECLARE @iEnd int --end record
SELECT @iStart = (@iPage - 1) * @iPageSize
SELECT @iEnd = @iStart + @iPageSize + 1
select * from #t where ID>@iStart and ID<@iEnd
DROP TABLE #t
return @iRecordCount
end
go
DIM pagenow,pagesize,pagecount,recordcount
DIM MyComm,MyRst
pagenow = Request("pn")
'鑷畾涔夊嚱鏁扮敤浜庨獙璇佽嚜鐒舵暟
if CheckNar(pagenow) = false then pagenow = 1
pagesize = 20
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
.CommandText = "getUserList" '鎸囧畾瀛樺偍榪囩▼鍚?/FONT>
.CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
'榪斿洖鍊?璁板綍鎬婚噺)
.Parameters.Append .CreateParameter("RETURN",2,4)
'鍑哄弬(鎬婚〉鏁?
.Parameters.Append .CreateParameter("@iPageCount",3,2)
'鍏ュ弬(褰撳墠欏靛彿)
.Parameters.append .CreateParameter("@iPage",3,1,4,pagenow)
'鍏ュ弬(姣忛〉璁板綍鏁?
.Parameters.append .CreateParameter("@iPageSize",3,1,4,pagesize)
Set MyRst = .Execute
end with
if MyRst.state = 0 then '鏈彇鍒版暟鎹紝MyRst鍏抽棴
recordcount = -1
else
MyRst.close '娉ㄦ剰錛氳嫢瑕佸彇寰楀弬鏁板鹼紝闇鍏堝叧闂褰曢泦瀵硅薄
recordcount = MyComm(0)
pagecount = MyComm(1)
if cint(pagenow)>=cint(pagecount) then pagenow=pagecount
end if
Set MyComm = Nothing
if recordcount = 0 then
Response.Write "鏃犺褰?
elseif recordcount > 0 then
MyRst.open
do until MyRst.EOF
......
loop
'浠ヤ笅鏄劇ず鍒嗛〉淇℃伅
......
else 'recordcount=-1
Response.Write "鍙傛暟閿欒"
end if
7. 榪斿洖澶氫釜璁板綍闆嗙殑瀛樺偍榪囩▼
鏈枃鏈鍏堜粙緇嶇殑鏄繑鍥炶褰曢泦鐨勫瓨鍌ㄨ繃紼嬨傛湁鏃跺欙紝闇瑕佷竴涓瓨鍌ㄨ繃紼嬭繑鍥炲涓褰曢泦錛屽湪ASP涓紝濡備綍鍚屾椂鍙栧緱榪欎簺璁板綍闆嗗憿錛熶負浜嗚鏄庤繖涓闂錛屽湪userinfo琛ㄤ腑澧炲姞涓や釜瀛楁錛歶sertel鍙妘sermail錛屽茍璁懼畾鍙湁鐧誨綍鐢ㄦ埛鍙互鏌ョ湅榪欎袱欏瑰唴瀹廣?/P>
CREATE PROCEDURE dbo.getUserInfo
@userid int,
@checklogin bit
as
set nocount on
begin
if @userid is null or @checklogin is null return
select username
from dbo.[usrinfo]
where userid=@userid
--鑻ヤ負鐧誨綍鐢ㄦ埛錛屽彇usertel鍙妘sermail
if @checklogin=1
select usertel,usermail
from dbo.[userinfo]
where userid=@userid
return
end
go
DIM checklg,UserID,UserName,UserTel,UserMail
DIM MyComm,MyRst
UserID = 1
'checklogin()涓鴻嚜瀹氫箟鍑芥暟錛屽垽鏂闂呮槸鍚︾櫥褰?BR> checklg = checklogin()
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = MyConStr 'MyConStr鏄暟鎹簱榪炴帴瀛椾覆
.CommandText = "getUserInfo" '鎸囧畾瀛樺偍榪囩▼鍚?BR> .CommandType = 4 '琛ㄦ槑榪欐槸涓涓瓨鍌ㄨ繃紼?/FONT>
.Prepared = true '瑕佹眰灝哠QL鍛戒護鍏堣緙栬瘧
.Parameters.append .CreateParameter("@userid",3,1,4,UserID)
.Parameters.append .CreateParameter("@checklogin",11,1,1,checklg)
Set MyRst = .Execute
end with
Set MyComm = Nothing
UserName = MyRst(0)
'浠庣浜屼釜璁板綍闆嗕腑鍙栧?/FONT>
if not MyRst is Nothing then
Set MyRst = MyRst.NextRecordset()
UserTel = MyRst(0)
UserMail = MyRst(1)
end if
Set MyRst = Nothing
鑷蟲錛岄拡瀵笰SP璋冪敤瀛樺偍榪囩▼鐨勫悇縐嶆儏鍐碉紝鏈枃宸插仛浜嗚緝涓哄叏闈㈢殑璇存槑銆傛渶鍚庤涓涓嬪湪涓涓狝SP紼嬪簭涓紝璋冪敤澶氫釜瀛樺偍榪囩▼鐨勪笉鍚屾柟娉曘?BR> 鍦ㄤ竴涓狝SP紼嬪簭涓紝璋冪敤澶氫釜瀛樺偍榪囩▼鑷沖皯鏈変互涓嬩笁縐嶆柟娉曟槸鍙鐨勶細
1. 鍒涘緩澶氫釜Command瀵硅薄
DIM MyComm
Set MyComm = Server.CreateObject("ADODB.Command")
'璋冪敤瀛樺偍榪囩▼涓
......
Set MyComm = Nothing
Set MyComm = Server.CreateObject("ADODB.Command")
'璋冪敤瀛樺偍榪囩▼浜?/FONT>
......
Set MyComm = Nothing
......
Set MyComm = Server.CreateObject("ADODB.Command")
'璋冪敤瀛樺偍榪囩▼涓
.....
'娓呴櫎鍙傛暟(鍋囪鏈変笁涓弬鏁?
MyComm.Parameters.delete 2
MyComm.Parameters.delete 1
MyComm.Parameters.delete 0
'璋冪敤瀛樺偍榪囩▼浜屽茍娓呴櫎鍙傛暟
......
Set MyComm = Nothing
Set MyComm = Server.CreateObject("ADODB.Command")
'璋冪敤瀛樺偍榪囩▼涓
.....
'閲嶇疆Parameters鏁版嵁闆嗗悎涓寘鍚殑鎵鏈塒arameter瀵硅薄
MyComm.Parameters.Refresh
'璋冪敤瀛樺偍榪囩▼浜?/FONT>
.....
Set MyComm = Nothing
涓鑸涓猴紝閲嶅鍒涘緩瀵硅薄鏄晥鐜囪緝浣庣殑涓縐嶆柟娉曪紝浣嗘槸緇忔祴璇?嫻嬭瘯宸ュ叿涓篗icrosoft Application Center Test)錛岀粨鏋滃嚭浜烘剰鏂欙細
鏂規硶2 >= 鏂規硶1 >> 鏂規硶3
鏂規硶2鐨勮繍琛岄熷害澶т簬絳変簬鏂規硶1(鏈澶氬彲楂?%宸﹀彸)錛岃繖涓ょ鏂規硶鐨勮繍琛岄熷害榪滃ぇ浜庢柟娉?(鏈澶氱珶楂樿揪130%)錛屾墍浠ュ緩璁湪鍙傛暟澶氭椂錛岄噰鐢ㄦ柟娉?錛屽湪鍙傛暟杈冨皯鏃訛紝閲囩敤鏂規硶2銆?/P>