第7单元 视图ppt课件.ppt
第7单元 视图数据库原理及应用内蒙古师范大学青年政治学院第7单元 视 图本单元主要目标:(1)了解SQL Server 2012视图的特点。(2)掌握视图的创建、修改和删除操作。(3)掌握通过视图修改基本表中数据的方法。数据库原理及应用内蒙古师范大学青年政治学院7.1 视图的特点 视图是关系数据库系统提供给用户从多角度观察数据库中数据的重要机制,是一种比较常用的数据库对象,视图是保存在数据库中的一组查询,它为用户提供了一种查看和存放数据的途径。 视图是用户查看数据库中数据的一种方式,视图是一个虚拟的表,其中的数据是一个或多个表的子集。需要注意的是,一个视图看起来像一个表,甚至基本操作也类似表,但它并不是表,它是一组SQL语句所返回的执行结果,本身并不存储任何的数据。 视图有以下几个特点: (1)检索特定的数据,并达到保护数据安全性的目的。 (2)简化数据查询和处理操作。 (3)对数据的安全保护。数据库原理及应用内蒙古师范大学青年政治学院7.2 视图的创建1、创建视图的注意事项:(1)视图名字必须满足标识符的命名规则,且对于每个用户必须唯一。(2)只能在当前的数据库系统上创建视图。但如果使用分布式查询来定义视图,则新视图所引用的数据表或视图都可以存在于其他数据库中。(3)可以在其他视图和应用视图的过程之上建立新视图。(4)不能将默认或规则定义域视图相关联。(5)定义视图的查询不可以包含ORDER BY、COMPUTE或COMPUTE BY子句。(6)不能将AFTER触发器与视图相关联,只有INSTEAD OF触发器可以与之相关联。(7)不能创建临时视图,也不能在临时表上创建视图。(8)不能在视图上定义全文索引。数据库原理及应用内蒙古师范大学青年政治学院2、创建视图的方法(1)利用SQL Server Management Studio向导创建视图。(2)使用CREATE VIEW语句创建视图。利用CREATE VIEW命令来建立视图的语法格式如下:CREATE VIEW 视图名(字段名),NAS SELECT 查询语句 其中,“视图名”为用户所创建的视图的名称,必须指定。“字段名”为创建视图的列名,可以省略。当省略该参数时,新建视图的结构将与SELECT语句所返回的记录集结构相同。【例7.1】在studentdb数据库中建立一个计算机专业的学生信息视图。USE studentdb GOCREATE VIEW 计算机系学生信息表ASSELECT * FROM studentWHERE sdepartment=计算机;数据库原理及应用内蒙古师范大学青年政治学院7.3 视图的管理和维护1、通过SQL Server Management Studio管理器来查看视图信息。2、视图重命名。3、查看视图的相关性。4、修改视图。(1)使用ALTER VIEW的完整语法格式如下:ALTER VIEW 视图名(字段名),NASSELECT 查询语句ALTER VIEW语法结构与CREATE VIEW完全相同,唯一区别是修改视图的视图名必须是已经存在的。(2)使用SQL Server Management Studio对象资源管理器向导修改视图。数据库原理及应用内蒙古师范大学青年政治学院5、删除视图。(1)使用SQL Server Management Studio对象资源管理器向导删除视图。(2)DROP VIEW 语句用于从当前数据库中删除一个或者多个视图,其语法格式为:DROP VIEW 视图名 ,N【例7.4】删除例7.2所建立的所有学生成绩信息表视图。在SQL Server Management Studio 查询窗口中输入下面的语句:USE studentdb DROP VIEW 所有学生成绩信息表数据库原理及应用内蒙古师范大学青年政治学院7.4 通过视图修改基本表中的数据 在SQL Server中通过视图不但可以检索数据表中的数据信息,还可以向表中添加或修改数据,但是所插入的数据必须符合数据表中所定义的各种约束和规则。 通过视图修改数据时,需要注意以下几点: (1)在一个UPDATE语句中修改的字段必须隶属于同一个引用表中,且一次不能修改多个视图的引用表。 (2)对视图中所有字段的修改都必须遵守引用表中所定义的各种数据完整性约束条件。 (3)不允许对视图中的字段值为计算结果的列进行修改,也不允许对视图定义中包含有统计函数或GROUP BY子句的视图进行修改和插入等操作。数据库原理及应用内蒙古师范大学青年政治学院【例7.5】修改例7.1中学号为1004的学生性别为“女”。 在SQL Server Management Studio 查询窗口中输入下面的语句: USE studentdb UPDATE 计算机系学生信息表 SET 性别=女 WHERE 学号=1004