五视图、存储过程与函数.pptVIP

  • 3
  • 0
  • 约1.28万字
  • 约 46页
  • 2017-06-12 发布于浙江
  • 举报
五视图、存储过程与函数

数据库原理与应用 张申勇 数据库原理与应用 第5章 视图、存储过程和用户自定义函数 5.1 视图 5.2 存储过程 5.3 用户自定义函数 5.1 视图 5.1.1 视图概念 5.1.2 定义视图 5.1.3 删除视图 5.1.4 视图的作用 5.1.1 视图概念 视图可以被看成是虚拟表。 视图中的数据不物理地存储在数据库内。 SELECT 语句的结果集构成了视图的内容。 5.1.2 定义视图 语法: CREATE VIEW 视图名 [(视图列名表)] AS 查询语句 定义单源表视图 建立信息系学生的视图。 CREATE VIEW IS_Student AS SELECT Sno, Sname, Sage FROM Student WHERE Sdept = 信息系 定义多源表视图 建立信息系选修了‘c01’号课程的学生的视图。 CREATE VIEW V_IS_S1(Sno, Sname, Grade) AS SELECT Student.Sno, Sname, Sage FROM Student JOIN SC ON Student.Sno = SC.Sno WHERE Sdept = 信息系 AND SC.Cno = c01 在已有视图上定义新视图 建立信息系选修了‘c01’号课程且成绩在90分以上的学生的视图。 CREATE VIEW V_IS_S2 AS SELECT Sno, Sname, Grade FROM V_IS_S1 WHERE Grade = 90 定义带表达式的视图 定义一个反映学生出生年份的视图。 CREATE VIEW BT_S(Sno, Sname, Sbirth) AS SELECT Sno, Sname, 2007-Sage FROM Student 含分组统计信息的视图 定义一个存放每个学生的学号及平均成绩的视图。 CREATE VIEW S_G(Sno, AverageGrade) AS SELECT Sno, AVG(Grade) FROM SC GROUP BY Sno 5.1.3 删除视图 格式: DROP VIEW 视图名 例.删除前边定义的IS_Student视图。 DROP VIEW IS_Student 5.1.4 视图的作用 简化数据查询语句 使用户能从多角度看到同一数据 提高了数据的安全性 提供了一定程度的逻辑独立性 5.2 存储过程 存储过程是 SQL 语句和控制流语句的预编译集合,它以一个名称存储并作为一个单元处理,应用程序可以通过调用的方法执行存储过程。 它使得对数据库的管理和操作更加容易、效率更高。 5.2.1 存储过程概念 SQL 语言是应用程序和 SQL Server 数据库之间的主要编程接口。使用SQL语言编写代码时,可用两种方法存储和执行代码。 一种是在客户端存储代码,并创建向数据库管理系统发送SQL命令(或SQL语句)并处理返回结果的应用程序; 第二种是将这些发送的SQL语句存储在数据库管理系统中,这些存储在数据库管理系统中的SQL语句就是存储过程。 存储过程与其它程序设计语言中的过程很类似 。 使用存储过程的好处 允许模块化程序设计 改善性能 减少网络流量 提供了安全机制 简化管理和操作 5.2.1 创建和执行存储过程 创建存储过程: CREATE PROC [ EDURE ] 存储过程名 [ { @参数名 数据类型 } [ = default ] [OUTPUT] ] AS SQL语句 执行存储过程: [ EXEC [ UTE ] ] 存储过程名 [实参 [, OUTPUT] [, … n] ] 创建不带参数的存储过程 查询计算机系学生的考试成绩,列出学生的姓名、课程名和成绩。 CREATE PROCEDURE student_grade1 AS SELECT Sname, Cname,Grade FROM Student s INNER JOIN sc ON s.sno = sc.sno INNER JOIN course c ON c.cno = sc.cno WHERE Sdept = 计算机系 创建带输入参数的存储过程 查询某个指定系学生的考试情况,列出学生的姓

文档评论(0)

1亿VIP精品文档

相关文档