实验五索引和数据完整性

上传人:鲁** 文档编号:469163582 上传时间:2024-01-28 格式:DOCX 页数:11 大小:195.28KB
返回 下载 相关 举报
实验五索引和数据完整性_第1页
第1页 / 共11页
实验五索引和数据完整性_第2页
第2页 / 共11页
实验五索引和数据完整性_第3页
第3页 / 共11页
实验五索引和数据完整性_第4页
第4页 / 共11页
实验五索引和数据完整性_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《实验五索引和数据完整性》由会员分享,可在线阅读,更多相关《实验五索引和数据完整性(11页珍藏版)》请在金锄头文库上搜索。

1、实验五索引和数据完整性1、目的与要求(1)掌握索引的使用方法。(2)掌握数据完整性的实现方法。2、实验准备(1)了解索引的作用与分类。(2)掌握索引的创建方法。(3)理解数据完整性的概念及分类。(4)掌握各种数据完整性的实现方法。3、实验内容(1)建立索弓I。使用CREATEINDE语句创建索弓|。A、对YGG域据库的Employees表中的DepartmentID列建立索引。在“查询分析器”窗口中输入如下程序并执行。SQLQueryLs-ql-lo.dmimstratorC52j)useYGGLgoF I案三击departjnd pF唯一,非国曲P-(.Employees(弟熊 1creat

2、eindexdepart_lndonEmployeesDepartmentIDgoB、在Employees表的Name列和Address列上建立复合索弓I。SQLQu&ryLsql - le.,diMinistratar (S2)* create indexintL on Employees (MamejAddress)T套I工ADjnt(R售一.非意匍jJldepjrt_ind不踵一.非鼠两PK_Employ&e5-J 享三.De p J nd作一,非疑跖出火_口:313 rtm EUtE I 笑妻C、又Department表上的DepartmentName列建立唯一非聚集索弓I。SQLQu

3、etyl.fqlld“dminitrWr(S功.EcreatejniqueindexDewindonDepartments(DeDartnentNaine【思考与练习】A、索引创建后在对象资源管理器中查看表的索引。上面分别创建了Employees表和Department表的索引,在对象资源管理器中的表中将相应的表打开,在“索引”中显示该表中建立的索引。详细结果如上面截图中显示。B、了解索引的分类情况。按索引的组织方式能够将索引分为聚集索引和非聚集索引两种类型。聚集索引将数据行的键值在表内排序并存储对应的数据记录,使得数据表物理顺序与索引顺序一致。非聚集索引完全独立于数据行的结构。C使用CREA

4、TEINDE落句能够创建主键吗?D、在什么情况下能够看到建立索引的好处?数据库的索引并不是只有数据库索引是为了增加查询速度而对表字段附加的一种标识。好处或者只有坏处的。当我们的数据库足够大,恰当的建立索引就会大大的提高查询搜索的速度;在这里举个反例,像查询性别这种大量重复的字段时候,是否建立索引是没有多大区别的;还有当表内数据不是很多的时候建立索引也是没有多大意义的,因为索引也是要占用资源的。但是当我们数据库非常大时候,经常进行GROUPB加询时候,若将GROUPBY段上建立索引就会很大程度上面较少查询搜索所花费的时间。使用界面方式创建索引。使用界面方式在Employees表的PhoneNum

5、ber列上创建索引。启动SQLServerManagermentStudio,在对象资源管理器中展开数据库YGGL展开表Employees,右击“索引”,选择“新建索引”选项。在新建索引的窗口中填写索引的名称和类型,单击“添加”按钮,在列框中选择要创建索引的列,选择完单击“确定”按钮即完成创建的工作。H脚本晒帮助表名E;索引名掰Q);索弓I类型唯一【思考与练习】A、使用界面方式创建一个复合索引。索引踵列圜起稀排序顺序额据类型大小 标识弁浒M儿L值添加从 Jdbo.Employee?,7诩籁网名称和据举用11 ii标识.允森此值*7| EtnployIDchur B)6舌舌,I ? Nsimec

6、har (10310否否。、千chtr自Birthdayd*1,电3否不 1工道挥要至加剧索弓I健的克列*表列W删除值)上移00下将Q)B、在Employees表的设计窗口中选择 Address列,右击选择索引/键”菜单项,在新 窗口中为 Address创建一个唯一索引。C创建一个数据量很大的新表,查看使用索引和不使用索引的区另人(2)重建索引。重建Employees表中的所有索引。SQLQueryl.sql - lo.L.dministra1or 52)” use YGGL80E alter index I.L on Employees rebuild【思考与练习】重建表Employees中

7、EmployeelD列上的索弓I。SQLQuerysql - E布迪 YGGL(56)* XEYGGL - dl-create index Employ_ind on employees EmployeelD)三届Iter index Emplayindonemployeesrebuiljd(3)删除索引。使用DROPINDEXXg句删除表Employees上的索弓Idepart_ind,使用如下T-SQ用句。SQLQueryl.sql-Icu.dministrator(52)*dropindxdepartindLonEmnlu/eest二靛击ADjnt (K叁一.三W登:时 国PK-Empl

8、口已日5宸案】从上面截图中可以显示,之前在Employees表中创建的depart_ind索引已经被删除。【思考与练习】A、使用DROPINDEX次删除Employees表上的多个索弓I。KK-hYGGL - dbo.5alarySQLQuery?sql-晾巡GL(sa。*X1dropindexEmploy_indonEmployees.B、使用界面方式删除Department表上的索引。在数据库YGGL中的Department表中打开索引,找到表Department表上的索引Dep_ind,右键删除,在弹出的“删除对象”窗口中选择“确定”,删除索引Dep_ind。1 / 10(4)数据完整性。创建一个表Employees5,只含EmployeeID、Name、Sex和Education歹,。将Name设为主键,作为列Name的约束。对EmployeeID列进行UNIQUE约束,并将其作为表的约束。二 JJ VlitiL,三 .j - J KL F J dbg .匚鼻gniL二手=dbe.Eir.alcjeesS 23力口 Eiflpiey心 的时时hiuIi,M曲Ef r5ljutConne二I_dbo,Salary匚口列mEmployeelDi.chari_6i,rdnulljDInComf(flcat,netnull)鱼Outcome0l

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号