sql求帮助!!变量名 '@mymax' 已声明。变量名在批查询或存储过程内部必须唯一。不知道是哪里错了

运行结果显示:变量名'@mymax'已声明。变量名在批查询或存储过程内部必须唯一。declare@mymaxint,@myminintexecusp_exec3100,@... 运行结果显示:变量名 '@mymax' 已声明。变量名在批查询或存储过程内部必须唯一。

declare @mymax int, @mymin int
exec usp_exec3 100,@mymax output,@mymin output
print @mymax
print @mymin
if(@mymin<60)
print 'bad score,fighting'
create procedure usp_exec3
@inputsno int,
@mymax int OUTPUT,
@mymin int OUTPUT
as
select cno,score
from score
where sno=@inputsno
select @mymax=max(score),@mymin=min(score)
from score
where sno=@inputsno
--
declare @mymax int,@mymin int
exec usp_exec3 100,@mymax OUTPUT,@mymin OUTPUT
print @mymax
print @mymin
if(@mymin<60)
print 'bad score,fighting!'
这个是题目:3创建存储过程usp_exec3完成功能为:给存储过程输入某个学生的学号,存储过程接受后打印出该学员所参加考试的课程号以及分数,并且从存储过程输出来该学员的所有考试科目中的最高分和最低分,在执行存储过程时用自定义的@mymax,@mymin来接受输出来的参数,并判断如果@mymin小于60分,打印出‘bad score,fiting’
展开
 我来答
任好慕jx
2013-04-14 · TA获得超过1516个赞
知道小有建树答主
回答量:1027
采纳率:66%
帮助的人:471万
展开全部
变量名 '@mymax' 进行了多次声明,同一个变量名声明一次就够了。
更多追问追答
追问
上面那个是粘贴时候多写了。。。从创建变量3开始。。。下面我看没什么问题啊
追答
你在declare块开始时声明了一下,为什么在procedure创建里的参数也要同名,这不就是问题所在嘛!
szm341
2013-04-14 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5160万
展开全部
单看存储过程没问题,不过如果你不小心把下面的执行语句也放进去一并创建了就不对了
追问
那是粘贴错了。。运行的时候没由上面那几句的,
追答
我的意思是,你从设计器中打开这个存储过程,看看如果没有多余的代码的话那么是没问题的
你出现这个错误,很可能是你调用的时候多写了什么,可以在一个新窗口中复制这个调用代码,执行一下看看结果
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式