实验五索引和数据完整性.pdf

上传人:l*** 文档编号:73520181 上传时间:2023-02-19 格式:PDF 页数:11 大小:706.08KB
返回 下载 相关 举报
实验五索引和数据完整性.pdf_第1页
第1页 / 共11页
实验五索引和数据完整性.pdf_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《实验五索引和数据完整性.pdf》由会员分享,可在线阅读,更多相关《实验五索引和数据完整性.pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实验五实验五 索引和数据完整性索引和数据完整性1 1、目的与要求、目的与要求(1)掌握索引的使用方法。(2)掌握数据完整性的实现方法。2 2、实验准备、实验准备(1)了解索引的作用与分类。(2)掌握索引的创建方法。(3)理解数据完整性的概念及分类。(4)掌握各种数据完整性的实现方法。3 3、实验内容、实验内容(1 1)建立索引。)建立索引。使用 CREATE INDEX 语句创建索引。A、对 YGGL 数据库的 Employees 表中的 DepartmentID 列建立索引。在“查询分析器”窗口中输入如下程序并执行。B、在 Employees 表的 Name 列和 Address 列上建立复

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

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

4、neNumber 列上创建索引。启动 SQL Server Managerment Studio,在对象资源管理器中展开数据库YGGL,展开表Employees,右击“索引”,选择“新建索引”选项。在新建索引的窗口中填写索引的名称和类型,单击“添加”按钮,在列框中选择要创建索引的列,选择完单击“确定”按钮即完成创建的工作。【思考与练习】【思考与练习】A、使用界面方式创建一个复合索引。B、在Employees 表的设计窗口中选择Address 列,右击选择“索引/键”菜单项,在新窗口中为 Address 创建一个唯一索引。C、创建一个数据量很大的新表,查看使用索引和不使用索引的区别。(2 2)重

5、建索引。)重建索引。重建 Employees 表中的所有索引。【思考与练习】【思考与练习】重建表 Employees 中 EmployeeID 列上的索引。(3 3)删除索引。)删除索引。使用 DROP INDEX 语句删除表 Employees 上的索引 depart_ind,使用如下 T-SQL 语句。从上面截图中可以显示,之前在Employees 表中创建的 depart_ind 索引已经被删除。【思考与练习】【思考与练习】A、使用 DROP INDEX 一次删除 Employees 表上的多个索引。B、使用界面方式删除 Department 表上的索引。在数据库 YGGL 中的 Dep

6、artment 表中打开“索引”,找到表 Department 表上的索引Dep_ind,右键删除,在弹出的“删除对象”窗口中选择“确定”,删除索引 Dep_ind。(4)数据完整性。创建一个表 Employees5,只含 EmployeeID、Name、Sex 和 Education 列。将 Name 设为主键,作为列 Name 的约束。对 EmployeeID 列进行 UNIQUE 约束,并将其作为表的约束。删除上列中创建的 UNIQUE 约束。【思考与练习】A、使用 T-SQL 命令创建一个新表,使用一个复合列作为主键,作为表的约束,并为其命令。B、使用 ALTER TABLE 语句为表

7、 Employees5添加一个新列 Address,并未该列定义UNIQUE约束。C、使用界面方式为一个新表定义主键和UNIQUE 约束,并了解如何使用图形向导方式删除主键和 UNIQUE 约束。创建新表 student,只考虑“号码”和“性别”两列,性别只能够包含男或女。【思考与练习】向该表中插入数据,“性别”列插入“男”和“女”以外字符,查看会发生什么情况模拟用户不小心输入汉字错误:创建新表 Salary2 表,结构与表 Salary 相同,但是表 Salary2 不允许 OutCome 大于InCome 列。【思考与练习】A、向表中插入数据,查看OutCome 比 InCome 大时会发

8、生什么情况在“查询分析器”中输入上面截图中的代码,执行后出现下面这样的错误。原因:在创建表 Salary2 的时候,规定了 InCome 大于 OutCome,如果输入的数据不满足这样的条件,那么就会出现错误与规定冲突。B、创建表Employees6 表,只考虑“学号”和“出生日期”两列,出生日期必须晚于 1980年 1 月 1 日。在“查询分析器”中输入上面的代码,在下面的结果栏中发现命令已经执行。对 YGGL 数据库中 Employees 表进行修改,增加“DepartmentID”字段的 CHECK 约束。在“查询分析器”窗口中输入下面程序并执行:执行上面的代码,但是出现了这样的问题。【

9、思考与练习】测试 CHECK 约束的有效性。在 Employees 表中进行增加修改,设置Check 约束,使得 DepartmentID 在 15 之间。如上面 T-SQL 命令所示,向表 Employees 中插入数据时,在结果栏中显示了 check 约束提示错误:从上面的 T-SQL 命令和结果栏中消息提示可以得出,该CHECK 约束有效。创建一个规则对象,用限制输入到该规则所绑定的列中的值只能是该规则中列出的值。在“查询分析器”中输入上面截图中的代码,显示规则已经绑定。【思考与练习】A、建立一个规则对象,限制值在020,然后把它绑定到 Employees 表的 WorkYear 字段上

10、。B、删除上述建立的规则对象名。创建表 Salary3,要求所有表 Salary3 上 EmployeeID 列的值都要出现在表Salary 中,利用参照完整性约束实现,要求当删除或修改Salary 表上的 EmployeeID 列时,Salary3 表中的 EmployeeID 值也会随之变化。使用 T-SQL 语句:执行上面截图中的命令,表Salary3 已经成功建好。【思考与练习】A、创建表 Salary3 后,初始化该表的数据与 Salary 表相同。删除 Salary 表中一行数据,在查看表 Salary3 中内容,看看会发生什么在左侧对象资源管理器中查看新建的的Salary3 表及

11、其数据:利用参照完整性约束实现,当删除或修改Salary 表上的 EmployeeID 列时,Salary3 表中的 EmployeeID 值也会随之变化。B、使用 ALTER TABLE 语句向 Salary 表中的 EmployeeID 列上添加一个外键,要求当Employees 表中要求删除或修改 EmployeeID 值有关的行时,坚持 Salary 表中有没有与该EmployeeID 值有关的记录,如果存在,则拒绝更新Employees 表。C、在对象资源管理器中建立Departments、Employees 和 Salary 3 个表之间的参照关系。4 4、实验总结、实验总结通过本次实验我了解了索引和CHECK 约束的大致用法,例如:在表中约束输入性别只准“男”或者“女”,利用 CHECK 约束,当输入字符错误时候会出现错误。同样也了解了索引的建立和使用的利弊,索引就像一把双刃剑,用得好查询搜索速度会提升很多,但是用得不好会浪费很多内存资源。同时通过本次实验知道了很多完整性规则的实现方法。总之,通过本次实验,收获了很多之前并不了解的知识;先前做一遍,再听老师讲解一遍理解更加深刻了。

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

当前位置:首页 > 应用文书 > 工作报告

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁