调用 带参数的存储过程 为什么出错 ???

来源:百度知道 编辑:UC知道 时间:2024/06/14 09:03:37
我在SQL server 2000 的企业管理器中建立的存储过程如下:

CREATE PROCEDURE dbo.myTestProc AS

declare @paraName varchar(20) ;

select top 1 * from dbo.同学录 where 性别= @paraName;
GO

其中@paraName 是我要传递给这个存储过程的参数。

然后我在查询分析器中写了:

exec dbo.myTestProc '男';

执行这条语句出错,提示是:过程 myTestProc 没有参数,但却为该过程提供了参数。

请问我应该怎么改????
jiangyue9674,你的回答显然不对

参数是在As之前的你这里的是存储过程里的变量

CREATE PROCEDURE dbo.myTestProc
(

@paraName varchar(20)
)
AS

select top 1 * from dbo.同学录 where 性别= @paraName;

你存储过程可能错了,这样看看

你那个不是参数是变量了啊
declare 去掉就好了

试试看
CREATE PROCEDURE dbo.myTestProc(@paraName varchar(20))AS
BEGIN
SELECT....