- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章视图、索引
回顾 预习检查 本章任务 本章目标 理解索引和视图的概念 掌握如何创建并使用视图 掌握如何创建并使用索引 视图的使用 视图概念 视图是包含由一张或多张表的列组成的数据集。该表中的记录是由一条查询语句执行后所得到的查询结果所构成的。 视图 视图的用途 筛选表中的行和列 防止未经许可的用户访问敏感数据 降低数据库的复杂程度 将多个物理数据库表抽象为一个逻辑数据库表 创建视图 视图示例1 在网吧计费系统中,有时我们要对上机记录表的数据进行统计。选择记录表recordInfo、卡号表cardInfo和电脑表PCInfo中的部分字段和记录来创建一个视图,视图名称定义为view_recordInfo. 视图示例2 使用视图的优点 视点集中:就是指使用户只关心他感兴趣的某些特定数据和他们所负责的特定任务。 简化操作:视图大大简化了用户对数据的操作。 定制数据:视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。 安全性:视图可以作为一种安全机制,通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可访问。 小结 创建视图的语法: 索引的概念 索引是一个单独的、物理的数据库结构,是数据库的一张表中所包含的值的列表,其中注明了表的各个值所在的存储位置。 索引类型 在SqlServer中,索引按类型可分为主键索引、聚集索引、非聚集索引和唯一索引 主键索引:在数据表中为表定义一个主键就自动创建主键索引,主键索引是唯一索引的特殊类型。 唯一索引:唯一索引不允许两行具有相同的索引值 聚集索引(Clustered):表中各行的物理顺序与键值的逻辑(索引)顺序相同,每个表只能有一个 非聚集索引(Non-clustered):非聚集索引指定数据的逻辑顺序。数据存储在一个位置,索引存储在另一个位置,索引中包含指向数据存储位置的指针。可以有多个,小于249个 如何创建索引 示例2 在网吧计费系统中,用户会经常查看自己会员卡上的余额。为了提高查询效率,我们需要为这个字段建立索引。因为会员上的余额CardInfo可能会有重复,所以索引只能创建非聚集索引。 索引查询 在索引创建成功之后,我们就可以像查找字典一样,选择按拼音查找或按笔画查找: 唯一索引 在会员表CardInfo中,会员的卡号不能有重复的值。我们可以为CardNumber字段创建唯一索引。 索引的优缺点 索引的优点 创建唯一性索引,保证数据表中每一行数据的唯一性。 大大加快数据的检索速度,这也是创建索引的最主要的原因。 索引的缺点 带索引的表在数据库中需要更多的存储空间。 操纵数据的命令需要更长的处理时间,因为它们需要对索引进行更新。 小结 索引分为哪几类? 总结 视图的优点,举例说明? 作业 创建一个视图,用来查询会员卡cardInfo表中余额大于50元的会员信息 创建一个视图,用于管理员查询正在上机的会员记录 为记录表recordInfo中的cardId字段创建一个非聚集索引 第六章 视图、索引 事务有哪些特征? 事务可以分成几类: 显示事务最常用,使用 开始事务,使用 提交事务,使用 回滚事务。 原子性,一致性,隔离性,持久性 显示事务,隐式事务,自动提交事务 begin transaction commit transaction rollback transaction 对于事务里的操作,要么全都成功,要么全都不成功,是属于事务的哪个特征? 原子性 在SQL Server 2005数据库中,( )可以被看成为虚拟的表。(选择一项) A.函数 B.视图 C.索引 D.存储过程 B create view view_name (select 语句) as 索引的类型可以分为哪些? 主键索引、聚集索引、非聚集索引、唯一索引 任务一: 用视图查询出在网吧计费系统中对上机记录表的数据进行统计: 任务二: 在网吧计费系统中,会员卡号不能有重复值,需创建唯一索引: CREATE VIEW view_stuInfo_stuMarks AS SELECT 姓名=stuName, 学号=stuInfo.stuNo,… 基于学员信息表和成绩表创建视图 教员需要的视图:方便查看学员的成绩 班主任需要的视图:方便查看学员的档案 视图是一张虚拟表,它表示一张表的部分数据或多张表
文档评论(0)