- 22
- 0
- 约1.2万字
- 约 18页
- 2017-05-13 发布于贵州
- 举报
SQL Serve实用基础教程第8章 视图和用户定义数据类型
第8章 视图和用户定义数据类型
本章学习目标
在数据库中,有时为了查询的方便,可以创建一个视图,然后通过视图来简化查询。而有时在设计表时, SQL Server提供的系统数据类型并不能完全满足需要,这时就需要数据库的实现者自己来定义一些数据类型。本章主要介绍了视图和用户自定义数据类型的各种具体操作方法,主要内容包括视图的基本知识,视图的创建、查看、修改和删除方法,以及用户自定义数据类型的创建、查看和删除方法等。
通过本章的学习,读者就应能够掌握视图和用户自定义数据类型的各种具体操作方法,并能够在对数据库的操作过程中对其进行应用,真正做到学以致用。
学习重点与难点
视图的概念和优缺点
视图的查看和管理
视图的修改和删除
用户自定义数据类型的创建
用户自定义数据类型的管理
8.1 视图的概念
视图是从一个或多个表(视图)导出的表,是数据库用户使用数据库的观点。它是用户查看数据库表中数据的一种方式,是基于某个查询结果的虚拟表,用户通过它来浏览表中感兴趣的部分或全部数据。而数据的物理存放位置仍然在表中,这些表称作视图的基表。一个视图可以派生于一个或多个基表,也可以从其它视图中派生。
视图实际上发挥着过滤数据的作用。定义视图的查询语句可以从一个表、多个表或者其他视图中引用数据。发布式数据库查询语句还可以定义、引用不同数据源的数据库视图。
一般地,视图的内容包括:基表的列的子集或行的子集;两个或者多个基表的联合;两个或者多个基表的连接;基表的统计汇总;另外一个视图的子集;视图和基表的混合。
视图和表是有本质区别的:视图在数据库中存储的是视图的定义,而不是查询的数据。当SQL SERVER处理视图的操作时,它会在数据库中找到视图的定义,然后把对视图的查询转化为视图基本表的查询。
8.2 视图的优缺点
视图常用于聚焦、简化和定制用户对数据库的感知和控制,它也可以作为一种安全机制,以便使用户只能通过视图来访问数据,而不给其访问基表的权限。
具体来讲,使用视图有下列优点:
(1)聚焦特定的数据。视图使用户只能看到和操纵与他们有关的数据,不需要了解和使用的数据不加入视图,这样可以提高数据的安全性。
(2)简化数据操作。通过将复杂查询(如多表的连接查询)定义为视图,可以简化操作,不必在每次需要数据时都要提供所需的条件、限制等。
(3)定制用户数据。视图可以让使用同一数据库的不同用户看到不同的数据。
(4)导入/导出数据。可以使用视图将数据导出到其他应用程序,也可以将数据文件中的数据导入到视图中。
(5)合并分离的数据。使用UNION关键字可以将两个或更多基于不同表的查询结果合并为一个单独的结果集,可以将这样的结果集创建为一个视图,让用户看起来就象一个单独的表一样。
(6)屏蔽数据库的复杂性(隔离变化)。用户不必了解复杂的数据库中的表结构,并且数据库表的更改也不影响用户对数据库的使用。
(7)简化用户权限的管理。只需授予用户使用视图的权限,而不必指定用户只能使用表的特定列,也增加了安全性。
(8)便于数据共享。各用户不必都定义和存储自己所需的数据,可共享数据库的数据,这样同样的数据只需存储一次。
使用视图也有其相应的缺点。例如,造成系统性能下降,并且会使用户对数据的修改受到很大限制等。
8.3 创建视图
用户在数据库中创建了一个或多个表后,为了方便查询其中的数据,就可以为其创建相应的视图,用以代替表来完成从表中查询、插入、更新和删除数据的操作。
创建视图有两种方法:使用企业管理器和使用T-SQL语句。
8.3.1 使用企业管理器创建视图
使用企业管理器创建视图的步骤如下:
(1)在企业管理器的树形目录中展开服务器组、服务器。
(2)展开Supermarket数据库,用鼠标右键单击“视图”目录,在弹出的快捷菜单中选择“新建视图…”选项,打开如图8-1所示的窗口。
图8-1 新建视图窗口
(3)在图8-1所示窗口的图表窗格(即最上面的窗格)中单击鼠标右键,在弹出的快捷菜单中选择“添加表…”命令,弹出如图8-2所示的对话框。
图8-2 添加表
(4)此对话框包括三个选项卡,分别显示了当前数据库的用户表、用户视图和函数。选定表后单击“添加”按钮,可以添加创建视图的基表,重复此操作可以添加多个基表。添加完毕后单击“关闭”按钮。
(5)添加完基表,可以如图8-1所示窗口的图表窗格中看到新添加的基表以及基表之间的外键引用关系,如图8-3所示。
图8-3 添加Goods表和Supplier表作为基表
(6)在图8-3中,每个基表的每一列的左边都有一个复选框,选择该复选框,可以指定该列在视图中被引用。图8-3的窗口中第二个窗格是条件窗格,在这个窗格中可以指定查询条件。条件窗格中显示了所有在图表中选中的、要在视图中引用的列。也可以对每一列选中或取消选中“输出
您可能关注的文档
- Silabs C851F850 BLDC马达参考设计.docx
- Silverligt 2.5D RPG游戏技巧与特效处理:(十九)基于WCF的注册与登录.docx
- SHP-250低温化培养箱和人工光照培养箱价格.docx
- Simple, Pactical Color Theory-色谱.doc
- Simulink在压控制系统仿真中的应用.doc
- SingaporeApplication Process.doc
- SIMOTION 在板带在线激光焊机中的应用.doc
- SL-5088PC埋地管线外防腐状况综合检测评估系统.doc
- SJB-030 #机组封闭母线安装作业指导书.doc
- SL-ZN01计算控制智能化液压传动综合实验台.doc
最近下载
- LaserjetCP1025系列打印机打印质量故障排除手册.pdf VIP
- 年会小品剧本小品剧本:搞笑小品剧本《都是喝酒惹事》台词大全.docx VIP
- 2026年高考全国II卷文科综合真题试卷(新课标卷)(+答案).docx VIP
- 安路科技(688107)补国产短板,突高端应用,拓新应用与技术大市场-240717-东北证券-38页.pdf VIP
- [搞笑小品剧本]上当了小品剧本.docx VIP
- 数据中心800V直流供电技术白皮书2.0.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 中国教育行业人才流动与薪酬水平_2025年12月.docx
- 2024全国初中数学联赛初二卷 .pdf VIP
原创力文档

文档评论(0)