有关asp调用存储过程的问题

我建了一个存储过程如下:
CREATE PROCEDURE TestUser
(
@UserId varchar(50),
@Password varchar(50),
@result int=0 output
)
AS

select * from users where Username=@UserId and Password=@Password
if @@rowcount>=1
set @result=1
else
set @result =0
GO

有关调用存储过程 test1.asp

 1   
 2dim username,password   
 3username=request("username")   
 4password=request("password")   
 5Set Conn=Server.CreateObject("ADODB.Connection")   
 6StrConn="Provider=sqloledb;Network Library=DBMSSOCN;Data Source=(local);Initial Catalog=JobDB;User Id=sa; Password=123;"   
 7Conn.Open StrConn   
 8  
 9conn.CursorLocation=3   
10set RS=server.createobject("ADODB.Command")   
11  
12RS.Commandtype=4   
13RS.ActiveConnection=conn   
14RS.CommandText="TestUser"   
15RS.parameters("@UserId")=username   
16RS.parameters("@password")=password   
17username2=RS.parameters("@UserId")   
18  
19Result=RS.parameters("@Result")   
20SET rs=RS.execute   
1<html>
2<head>
3<title>无标题文档</title>
4<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
5</head>
6<body bgcolor="#FFFFFF" text="#000000">   

response.write(Result)

=Result

1</body>
2</html>

发关表单 test.htm

 1<html>
 2<head>
 3<title>无标题文档</title>
 4<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
 5</head>
 6<body bgcolor="#FFFFFF" text="#000000">
 7<form action="test1.asp" method="post" name="form1">
 8<p>用户名:   
 9<input name="username" type="text"/>
10<br/>
11<br/>
12</p>
13<p>密码:   
14<input name="password" type="text"/>
15<input name="Submit" type="submit" value="提交"/>
16</p>
17</form>
18</body>
19</html>

但我怎样也调用不出返回值,请大家帮一下忙吧.

---------------------------------------------------------------

 1   
 2Dim cmdUpdate   
 3Dim lRecs   
 4Dim sType   
 5Dim cPercent   
 6Dim cMax   
 7  
 8sType = Request.Form("lstTypes")   
 9cPercent = Request.Form("txtPercent")   
10  
11Response.Write "Updating all books"   
12If sType <> "all" Then   
13Response.Write " of type

<b>" &amp; sType &amp; "</b>

1"   
2End If   
3Response.Write " by " & cPercent & "%

<p>"

Set cmdUpdate = Server.CreateObject("ADODB.Command")

With cmdUpdate
.ActiveConnection = strConn
.CommandText = "usp_UpdatePricesMax"
.CommandType = adCmdStoredProc

.Parameters.Append .CreateParameter ("@type", adVarWChar, adParamInput, 12, sType)
.Parameters.Append .CreateParameter ("@percent", adCurrency, adParamInput, , cPercent)
.Parameters.Append .CreateParameter ("@max", adCurrency, adParamOutput)&lt;=输出参数

.Execute lRecs, , adExecuteNoRecords

cMax = .Parameters("@max")
End With

Response.Write "Procedure complete. " &amp; lRecs &amp; " were updated.<p>"
Response.Write "The highest price book is now " &amp; FormatCurrency(cMax)

Set cmdUpdate = Nothing

1\---------------------------------------------------------------   
2  
3你的代码有一些问题   
4这样就可以了注意最后两行.   
5  
6  

dim username,password
username=request("username")
password=request("password")
Set Conn=Server.CreateObject("ADODB.Connection")
StrConn="Provider=sqloledb;Network Library=DBMSSOCN;Data Source=(local);Initial Catalog=JobDB;User Id=sa; Password=123;"
Conn.Open StrConn

conn.CursorLocation=3
set RS=server.createobject("ADODB.Command")

RS.Commandtype=4
RS.ActiveConnection=conn
RS.CommandText="TestUser"
RS.parameters("@UserId")=username
RS.parameters("@password")=password
username2=RS.parameters("@UserId")
RS.execute()
Result=RS.parameters("@Result")

Published At
Categories with Web编程
comments powered by Disqus