SP输出值问题 [英] SP OUTPUT VALUE PROBLEM
问题描述
ERROR
错误类型:ADODB.Command
(0x800A0BB9)参数类型错误,超出可接受的范围,
或者是
行:.Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput)
MYPROC是
创建程序st_myProc
@inparm INT,@ outparm INT OUTPUT
AS
SET @outparm = 10
GO
带ADO的ASP代码
set cmd = server.CreateObject(" ADODB.Command")
设置cmd.ActiveConnection = baglantim
cmd.CommandText =" st_myProc"
cmd.CommandType = 4
with cmd
.Parameters.Append .CreateParameter(" @inparm",adInteger,adParamInput)
.Parameters.Append .CreateParameter(" @ inparm",adInteger,adParamInput)
结束
设置rs = cmd.Execute
Dim i
而不是rs.EOF
Resp onse.Write rs.Fields(i)&"
i = i + 1
rs.MoveNext
Wend
输出的ASP代码中不应该有一个参数吗?
" Savas Ates"写道:
错误
错误类型:ADODB.Command
(0x800A0BB9)参数类型错误,超出可接受的范围,
或是:
行:.Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput)
MYPROC是
创建程序st_myProc
@ inparm INT,@ outparm INT OUTPUT
AS
SET @ outparm = 10
GO
ASP代码与ADO
set cmd = server.CreateObject(" ADODB.Command")
设置cmd.ActiveConnection = baglantim
cmd.CommandText =" st_myProc"
cmd。 CommandType = 4
with cmd
.Parameters.Append .CreateParameter(" @inparm",adInteger,adParamInput)
.Parameters.Append .CreateParameter(" @inparm",adInteger,adParamInput )
结束
设置rs = cmd.Execute
Dim i
而不是rs.EOF
Response.Write rs.Fields(i)& ;"
i = i + 1
rs.MoveNext
Wend
>
> with cmd.Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput).Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput)结束
你有两个问题。首先,您要尝试两次创建相同的
参数。第二个是第二个参数需要
spec或者是一个InputOutput或者只是一个输出参数。
你需要在这里改变你的第二行喜欢:
.Parameters.Append.CreateParamenter(" @outparm",adInteger,
adParamOutput)
Rick Sawtell
实际声明......你的意思是什么?
不应该是其中一个参数ASP输出代码?你的
动词在这里是什么?我怎么能解决这个问题呢?
with cmd
.Parameters.Append .CreateParameter(" @inparm",adInteger,adParamInput
, ,10)
.Parameters.Append .CreateParameter(" @outparm",adInteger,
adParamOutput)
以
结束
" Jeffrey K. Ericson" < Je ************* @ discussion.microsoft.com> ;, haber
iletisinde tunlary
yazdy:B9 **** ****************************** @ microso ft.com ...不应该ASP代码中的一个参数是输出?
Savas Ates写道:
错误
错误类型:ADODB.Command
(0x800A0BB9)参数类型错误,超出可接受的范围,<行或:
行:.Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput)
MYPROC
创建程序st_myProc
@ inparm INT,@ outparm INT OUTPUT
AS
SET @ outparm = 10
GO
带ADO的ASP代码
set cmd = server.CreateObject(" ADODB.Command")
设置cmd.ActiveConnection = baglantim
cmd.CommandText =" st_myProc"
cmd.CommandType = 4
with cmd
.Parameters.Append .CreateParameter(" @inparm",adInteger,
adParamInput)
.Parameters.Append .CreateParameter(" ; @inparm",adInteger,
adParamInput)
结束
设置rs = cmd.Execute
Dim i
而不是rs.EOF
Response.Write rs.Fields(i)&"
i = i + 1
rs.MoveNext
Wend
ERROR
Error Type: ADODB.Command
(0x800A0BB9) Arguments are of the wrong type, are out of acceptable range,
or are
line : .Parameters.Append .CreateParameter("@inparm", adInteger,
adParamInput)
MYPROC IS
CREATE PROCEDURE st_myProc
@inparm INT , @outparm INT OUTPUT
AS
SET @outparm=10
GO
ASP CODE WITH ADO
set cmd=server.CreateObject ("ADODB.Command")
Set cmd.ActiveConnection = baglantim
cmd.CommandText = "st_myProc"
cmd.CommandType = 4
with cmd
.Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput)
.Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput)
end with
Set rs = cmd.Execute
Dim i
While Not rs.EOF
Response.Write rs.Fields(i)&" "
i = i + 1
rs.MoveNext
Wend
Shouldn''t one of the parameters in the ASP code by output?
"Savas Ates" wrote:
ERROR
Error Type: ADODB.Command
(0x800A0BB9) Arguments are of the wrong type, are out of acceptable range,
or are
line : .Parameters.Append .CreateParameter("@inparm", adInteger,
adParamInput)
MYPROC IS
CREATE PROCEDURE st_myProc
@inparm INT , @outparm INT OUTPUT
AS
SET @outparm=10
GO
ASP CODE WITH ADO
set cmd=server.CreateObject ("ADODB.Command")
Set cmd.ActiveConnection = baglantim
cmd.CommandText = "st_myProc"
cmd.CommandType = 4
with cmd
.Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput)
.Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput)
end with
Set rs = cmd.Execute
Dim i
While Not rs.EOF
Response.Write rs.Fields(i)&" "
i = i + 1
rs.MoveNext
Wend
> with cmd.Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput) .Parameters.Append .CreateParameter("@inparm", adInteger, adParamInput) end with
You have two issues. The first is that you are trying to create the same
parameter twice. The second is that the second parameter needs to be
spec''ced as either an InputOutput or just an Output parm.
You need to change your second line here to something like:
.Parameters.Append.CreateParamenter("@outparm", adInteger,
adParamOutput)
Rick Sawtell
actual with statement... what u mean?
Shouldn''t one of the parameters in the ASP code by output? what is your
verb here ? how can i solve this promlem ?
with cmd
.Parameters.Append .CreateParameter ("@inparm", adInteger, adParamInput
, ,10)
.Parameters.Append .CreateParameter ("@outparm", adInteger,
adParamOutput)
end with
"Jeffrey K. Ericson" <Je*************@discussions.microsoft.com>, haber
iletisinde tunlary
yazdy:B9**********************************@microso ft.com...Shouldn''t one of the parameters in the ASP code by output?
"Savas Ates" wrote:ERROR
Error Type: ADODB.Command
(0x800A0BB9) Arguments are of the wrong type, are out of acceptable
range,
or are
line : .Parameters.Append .CreateParameter("@inparm", adInteger,
adParamInput)
MYPROC IS
CREATE PROCEDURE st_myProc
@inparm INT , @outparm INT OUTPUT
AS
SET @outparm=10
GO
ASP CODE WITH ADO
set cmd=server.CreateObject ("ADODB.Command")
Set cmd.ActiveConnection = baglantim
cmd.CommandText = "st_myProc"
cmd.CommandType = 4
with cmd
.Parameters.Append .CreateParameter("@inparm", adInteger,
adParamInput)
.Parameters.Append .CreateParameter("@inparm", adInteger,
adParamInput)
end with
Set rs = cmd.Execute
Dim i
While Not rs.EOF
Response.Write rs.Fields(i)&" "
i = i + 1
rs.MoveNext
Wend
这篇关于SP输出值问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!