数据库-电子教案PPT第6章.ppt

上传人:max****ui 文档编号:11543555 上传时间:2020-04-28 格式:PPT 页数:40 大小:1.09MB
返回 下载 相关 举报
数据库-电子教案PPT第6章.ppt_第1页
第1页 / 共40页
数据库-电子教案PPT第6章.ppt_第2页
第2页 / 共40页
数据库-电子教案PPT第6章.ppt_第3页
第3页 / 共40页
点击查看更多>>
资源描述
第五章,视图和索引,本章目标,掌握如何创建并使用视图掌握如何创建索引,教师需要的视图:方便查看学生的成绩,班主任需要的视图:方便查看学生的档案,什么是视图?,CREATEVIEWv_tblstudentASSELECT学号=s.stu_id姓名=stud_name,基于学生基本情况表表和成绩表创建视图,视图是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上视图中并不存放数据,而是存放在视图所引用的原始表(基表)中同一张原始表,根据不同用户的不同需求,可以创建不同的视图,什么是视图?,视图的用途筛选表中的行防止未经许可的用户访问敏感数据降低数据库的复杂程度将多个物理数据库抽象为一个逻辑数据库,什么是视图?,演示使用T-SQL管理平台创建视图,如何创建视图?,显示关系图窗格,显示条件窗格,显示SQL窗格,显示结果窗格,使用T-SQL语句创建视图的语法,CREATEVIEW视图名AS,如何创建视图?,IFEXISTS(SELECT*FROMsysobjectsWHEREname=view_stu_score)DROPVIEWview_stu_scoreGOCREATEVIEWview_stu_scoreASSELECT学号=stud_id,姓名=(selectstud_namefromtblstudentswheresc.stud_id=sc.stud_id),最高分=max(score),平均分=avg(score),最低分=min(score)FROMtblscorescGROUPBYsc.stud_idGOSELECT*FROMview_stu_score,创建一个查看成绩的视图,检测视图是否存在,创建视图,使用视图,删除视图,如何创建视图?,视图查看结果,示例6.1,示例6.1答案,行列子集视图,示例6.2,示例6.2答案,行列子集视图,示例6.3,示例6.3答案,带WITHCHECKOPTION的视图,示例6.4,示例6.4答案,带Withencryption的视图,示例6.5,示例6.5答案,基于多个基本表的视图,示例6.6,示例6.6答案,基于视图的视图,示例6.7,示例6.7答案,带表达式的视图,示例6.8,示例6.8答案,分组视图,删除视图的T-SQL语法结构,示例6.9,删除视图,示例6.9答案,示例6.10,示例6.10答案,通过视图更新记录,注:(2)修改基表不成功的原因是不能同时对两个基表修改。,示例6.11,示例6.11答案,通过视图插入记录,示例6.12(1),示例6.12(2),通过视图删除记录,注:删除数据不成功的原因是不能同时对两个基表数据进行删除。,什么是索引,汉语字典中的汉字按页存放,一般都有汉语拼音目录(索引)、偏旁部首目录等我们可以根据拼音或偏旁部首,快速查找某个字词,IndexesUseKeyValuestoLocateData(根据索引键查找定位数据行),IndexPages(索引页),什么是索引,SQLServer中的数据也是按页(4KB)存放。索引:是SQLServer编排数据的内部方法。它为SQLServer提供一种方法来编排查询数据。索引页:数据库中存储索引的数据页;索引页类似于汉语字(词)典中按拼音或笔画排序的目录页。索引的作用:通过使用索引,可以大大提高数据库的检索速度,改善数据库性能。,什么是索引,唯一索引(unique):唯一索引不允许两行具有相同的索引值。唯一性索引特例:主键索引。为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键中的每个值是唯一的,并且不能为空聚集索引(Clustered):表中各行的物理顺序与键值的逻辑(索引)顺序相同,每个表只能有一个非聚集索引(Non-clustered):非聚集索引指定表的逻辑顺序。数据存储在一个位置,索引存储在另一个位置,索引中包含指向数据存储位置的指针。可以有多个,小于249个,索引类型,演示使用T-SQL管理平台创建索引,如何创建索引?,如何创建索引?,输入索引名称,设置聚集或非聚集索引,设置是否是唯一性索引,添加索引键列,删除索引键列,使用【表设计器】创建索引,使用【表设计器】创建索引,使用【表设计器】创建索引,CREATEUNIQUECLUSTERED|NONCLUSTEREDINDEX索引名ON表名(列名ASC|DESC)WITHFILLFACTOR=x,UNIQUE表示唯一索引,可选CLUSTERED、NONCLUSTERED表示聚集索引还是非聚集索引,可选FILLFACTOR表示填充因子,指定一个0到100之间的值,该值指示索引页填满的空间所占的百分比,使用T-SQL语句创建索引的语法:,唯一索引,聚集索引或非聚集索引,填充因子(系数):指定一个0100之间的值,表示索引页填充的百分比,T-SQL语句命令创建索引,USEstudentGOIFEXISTS(SELECTnameFROMsysindexesWHEREname=IX_uq_nonclustered_identity_id)DROPINDEXIX_uq_nonclustered_identity_idCREATEuniqueNONCLUSTEREDINDEXIX_uq_nonclustered_identity_idONtblstudent(identity_id)GO/*-指定按索引IX_uq_nonclustered_identity_id查询-*/SELECT*FROMtblstudent(INDEX=IX_uq_nonclustered_identity_id),在学生基本情况表(tblstudent)的列identity_id(身份证号)上创建唯一性非聚集索引。,检测索引是否存在:索引存放在系统表sysindexes中,示例6.1,查看、修改和删除索引,利用SQLServer管理平台查看、修改和删除索引,存储过程查看索引的语法,利用存储过程查看索引,Executesp_helpindex,存储过程查看索引的示例,利用存储过程查看索引,存储过程删除索引的语法,利用T-SQL语句删除索引,Dropindex,示例,利用T-SQL语句删除索引,示例答案,索引的优缺点,优点加快访问速度加强行的唯一性缺点带索引的表在数据库中需要更多的存储空间操纵数据的命令需要更长的处理时间,因为它们需要对索引进行更新,创建索引的指导原则,请按照下列标准选择建立索引的列。该列用于频繁搜索该列用于对数据进行排序请不要使用下面的列创建索引:列中仅包含几个不同的值。表中仅包含几行。为小型表创建索引可能不太划算,因为SQLServer在索引中搜索数据所花的时间比在表中逐行搜索所花的时间更长,总结,视图是一张虚拟表,可以方便不同用户的查询,提高数据的安全性,筛选特定的数据行建立索引有助于快速检索数据。索引分为唯一索引(主键索引)、聚集索引、非聚集索引,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!