⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 存储过程的实现.sql

📁 SQL SERVER环境下实现存储过程的例子
💻 SQL
字号:
CREATE PROCEDURE ReturnCodePro
@Sno char(10) = NULL,  --设置参数的默认值
@Minage  char(10)= NULL OUTPUT
AS  
-- 判断@Sno参数
IF @Sno IS NULL--参数值为空则输出以下提示错误的语句
   BEGIN
       --错误: 您应该指定该学生的学号
       RETURN(1)--返回整数值1
   END
ELSE--若不为空
   BEGIN
   -- 确定输入的变量值是否正确
   IF (SELECT COUNT(*) FROM [chapter5].[dbo].[Example5-1]
          WHERE 学号 = @Sno) = 0
      RETURN(2)--若不正确则返回2
   END
SELECT * from [chapter5].[dbo].[Example5-1] WHERE 学号=@Sno;
-- 设置输出参数的值
SELECT @Minage= min(年龄) 
FROM [chapter5].[dbo].[Example5-1]
--检查上面的SQL语句是否错误
IF @@ERROR <> 0 
   BEGIN
      RETURN(3)--若错误则返回3
   END
ELSE--若不错
   BEGIN
   -- 检查过程输出的值是否为空
     IF @Minage =0
       RETURN(4)--若为空则返回4 
     ELSE
      -- 若不是则执行成功
        RETURN(0)--成功则返回0
   END
GO
--声明两个变量分别来接收存储过程输出的值和返回代码
DECLARE @minage char(10), @ret_code int;
--执行存储过程,指定输入参数的值,
--获得返回代码和输出参数的值
EXECUTE @ret_code = ReturnCodePro
    N'002', @Minage = @minage OUTPUT;
--  检查返回代码的值
IF @ret_code = 0
BEGIN
   PRINT '存储过程运行成功!'
   --显示过程输出的值
   PRINT  '表中最小年龄为'+RTRIM(@minage)+'.'
END
ELSE IF @ret_code = 1
   PRINT '错误: 您应该指定该学生的学号。'
ELSE IF @ret_code = 2 
   PRINT '错吴:请输入正确的学号。'
ELSE IF @ret_code = 3
   PRINT '错误:获得表中学生的最小年龄时出错。'
ELSE IF @ret_code = 4
  PRINT '错误:得到的学生的最小年龄为0。'
  GO

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -