网络数据库讲稿(存储过程)_网络数据库讲稿备份

2020-02-29 其他范文 下载本文

网络数据库讲稿(存储过程)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“网络数据库讲稿备份”。

网络数据库讲稿

4/15/2013

存储过程

P177

一、什么是存储过程

1.是一个过程,与其它语言中的过程几乎完全相同。它们可以接收参数、输出参数、返回单个或多个结果集以及返回值。2.存储在服务器上的数据库中,创建时进行编译。3.在后台运行,其主要功能是对数据库操作。4.可以在一个存储过程内调用其它存储过程。

二、.存储过程的分类

分为三类:用户自定义存储过程(普通存储过程),扩展存储过程,系统存储过程。

三、创建普通存储过程

CREATE PROCEDURE命令 例: 1.CREATE PROCEDURE 检索 @XH CHAR(6)AS SELECT * FROM 成绩 WHERE 学号=@XH 2.在成绩表中添加一条记录,如果成绩及格,还要在学生表中增加学分。

CREATE PROCEDURE 输入考试分数

@XH CHAR(6),@KCH CHAR(8),@FS DECIMAL(4,1)AS IF EXISTS(SELECT * FROM 学生 WHERE 学号=@XH)BEGIN

INSERT 成绩 VALUES(@XH,@KCH,@FS)

IF @FS>=60

UPDATE 学生 SET 已修学分

=已修学分+(SELECT 学分 FROM 课程 WHERE 课程编号=@KCH)

WHERE 学号=@XH END ELSE PRINT '无此学号'+@XH

3.在成绩表中删除指定学号和课程的记录,如果所删的分数及格,还要在学生表中减去对应的学分。CREATE PROCEDURE 删除考试分数

@XH CHAR(6),@KCH CHAR(8)AS DECLARE @FS DECIMAL(4,1)SET @FS=(SELECT MAX(分数)FROM 成绩

网络数据库讲稿

4/15/2013 WHERE 学号=@XH AND 课程编号=@KCH)IF @FS>0 DELETE FROM 成绩 WHERE 学号=@XH AND 课程编号=@KCH IF @FS>=60 UPDATE 学生 SET 已修学分

=已修学分-(SELECT 学分 FROM 课程 WHERE 课程编号=@KCH)

WHERE 学号=@XH

四、执行存储过程

P183 例: EXECUTE 检索 '200202' 检索 '200202' INSERT 成绩0 EXECUTE 检索 '200202' EXECUTE 输入考试分数 '200209','W2020610',56 EXECUTE 输入考试分数 '200209','W2020610',88 EXECUTE 输入考试分数 '200209','L2030506',90 如果执行存储过程是批处理中的第一条语句,则可以省略EXEC。

五、参数

P185 1.输入参数 按位置传递 用参数名传递 使用默认值

2.输出参数

P187 虚参和实参后边都要加上OUTPUT。例P187: CREATE PROC 班级人数@N INT OUTPUT,@CID CHAR(6)='200201' AS SELECT @N=COUNT(*)FROM 学生WHERE 班级=@CID

DECLARE @M INT EXEC 班级人数@M OUTPUT,'200208' SELECT @M

DECLARE @M INT EXEC 班级人数@M OUTPUT SELECT @M

六、查看存储过程信息

select * from sys.sql_modules SELECT OBJECT_DEFINITION(OBJECT_ID('检索'))

网络数据库讲稿

4/15/2013 sp_helptext 检索

七、修改存储过程

八、删除存储过程

1.在对象资源管理器或查询窗口中删除 2.用命令DROP PROCEDURE删除。

《网络数据库讲稿(存储过程).docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
网络数据库讲稿(存储过程)
点击下载文档
相关专题 网络数据库讲稿备份 讲稿 存储过程 数据库 网络数据库讲稿备份 讲稿 存储过程 数据库
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文