
SQL存储过程??
我的数据库名称是111GOUSE111PROCEDUREQuery_Study(@snochar(6),@snchar(20)OUTPUT,@deptchar(10)OU...
我的数据库名称是111
GO
USE 111
PROCEDURE Query_Study
(
@sno char(6),
@sn char(20) OUTPUT,
@dept char(10) OUTPUT
set @sn=sn,
set @dept=dept,
)AS
Select sn,dept FROM s WHERE sno=@sno
GO
这个是我的一个存储过程,麻烦大侠帮忙看下错误 USE后面是接数据库名称的吧
能够帮我把参数解释一下吗??谢谢啦 ..... 展开
GO
USE 111
PROCEDURE Query_Study
(
@sno char(6),
@sn char(20) OUTPUT,
@dept char(10) OUTPUT
set @sn=sn,
set @dept=dept,
)AS
Select sn,dept FROM s WHERE sno=@sno
GO
这个是我的一个存储过程,麻烦大侠帮忙看下错误 USE后面是接数据库名称的吧
能够帮我把参数解释一下吗??谢谢啦 ..... 展开
2个回答
展开全部
错误确实相当的多,建议你找本书看看。
下面说说你你这个存储过程出现的错误吧。
1、【USE 111 】不是必要的,但是你写了也没错,只要你写的数据名对,并且你确实想把这个存储过程创建在这个数据库中。
2、【PROCEDURE Query_Study】缺少一个关键字CREATE (创建)或 ALTER (更改)。
3、【set @sn=sn,】和【set @dept=dept,】不应该写在参数位置。应该在AS关键字下面。
4、建议你在AS后写上Begin ......END 关键字。
5、建议你在在前面加上一段判断是否存在你要写的 存储过程。
改好后如下
USE 111
IF EXISTS (
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE SPECIFIC_NAME = N'Query_Study'
)
DROP PROCEDURE Query_Study
GO
CREATE PROCEDURE Query_Study
(
@sno char(6),
@sn char(20) OUTPUT,
@dept char(10) OUTPUT
)AS
BEGIN
Select @sn = sn,@dept = dept FROM s WHERE sno=@sno
END
GO
另外建议你的存储过程的名字使用 PRC_XXXX
或P_XXXXXX
下面说说你你这个存储过程出现的错误吧。
1、【USE 111 】不是必要的,但是你写了也没错,只要你写的数据名对,并且你确实想把这个存储过程创建在这个数据库中。
2、【PROCEDURE Query_Study】缺少一个关键字CREATE (创建)或 ALTER (更改)。
3、【set @sn=sn,】和【set @dept=dept,】不应该写在参数位置。应该在AS关键字下面。
4、建议你在AS后写上Begin ......END 关键字。
5、建议你在在前面加上一段判断是否存在你要写的 存储过程。
改好后如下
USE 111
IF EXISTS (
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE SPECIFIC_NAME = N'Query_Study'
)
DROP PROCEDURE Query_Study
GO
CREATE PROCEDURE Query_Study
(
@sno char(6),
@sn char(20) OUTPUT,
@dept char(10) OUTPUT
)AS
BEGIN
Select @sn = sn,@dept = dept FROM s WHERE sno=@sno
END
GO
另外建议你的存储过程的名字使用 PRC_XXXX
或P_XXXXXX

2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询