mysql实验五索引和数据完整性_实验六 索引和数据完整性约束

实验六索引和数据完整性约束

一、实验内容:

1、 索引的创建

2、 数据完整性约束的创建

二、实验项目:员工管理数据库

用于企业管理的员工管理数据库,数据库名为YGGL中,YGGL数据库中包括三个表:Employees(员工信息表)、Departments(部门信息表)、Salary(员工薪水情况表)。

三、实验步骤:(要求用命令完成以下操作)

1、 使用create index创建索引:

1)       对Employees表中的员工编号列创建普通索引depart_index;

ca7c584dd93867cb9865bc4b20b17819.png

2)       对Employees表中的姓名和地址列创建复合索引ad_index;

ae76224f509fbc47e228528186d33e7d.png

3)       对Departments表中的Departmentname列创建唯一索引;

5001a2a43d42931d2cc0b9a8ec29e954.png

4)       使用show index看Employees表和Departments中索引。

5b2eaeb590b5e2e6400cf74249ad91d5.png

eebd41c946b61caa56a4f2273670808e.png

2、 使用alter table添加索引

1)       对Employees表中的出生时间列添加一个唯一索引date_index,姓名和性别列添加一个复合索引name_sex_index;

d68098d564cbfdfffa9d42c14d0a471c.png

2)       先查看Departments表中是否有主键索引,如果有,请先删除主键索引;

0863506057d5326be1f241a76a194aad.png

0fb2ef6bf32a2e276bbd22ee053bf05b.png

3)       对Departments表中的部门编号创建主键索引;

6953d09d6d0e82eb95c4c696d881d738.png

4)       对Employees表中的部门编号列创建外键索引。

8b4568b3d45da43624874b2f1fe812f9.png

3、 在创建表的同时创建索引

1)       创建cpk(产品编号,产品名称、单价、库存量)(每列的数据类型及长度等信息自定),并对产品编号列创建主键,在库存量和单价列创建复合索引cpk_fh_index。

a3d09fa382ff9d3f69fb58b4640bca38.png

4、 显示索引

1)       使用show index看Employees表上的索引

1a510d9d8085f0ae498a48c0e5696a52.png

5、 删除索引

1)       使用drop index删除索引depart_index、ad_index和date_index;

c9fda5289326a375f3e538da4eb9bef4.png

635732c03d7a2ac4e7a1335d77eca9f7.png

a4be1c2fdb89fc7e719d4a42fcbf43de.png

2)       使用alter table删除Employees表上的主键索引和外键索引。

3849cb9189a63dccdb20112d3a845d60.png

6、 数据完整性约束

1)       创建一个员工奖金发放表jj(employeid,je),其中employeid为主键,其值必须是Employees表中已有的员工编号,并且档删除和修改Employees表中员工编号列时,要求jj表中的员工编号列的数据也随着变化。

9e01462eecc4a9103474d0b4d79fd71f.png

2)       创建雇员表emp,只考虑员工编号、姓名和性别3列,姓名列满足唯一约束,性别只能包括男或女;

db53f50357d7e6887e0564ecab8166e3.png

3)       创建雇员表emp_1,只考虑员工编号和出生时间2列,要求出生时间必须大于1980年1月1日,并将该约束命名为birthdate_id;

b21e36c9b018604c93ff2516652139d3.png

4)       创建雇员表emp_2,只考虑员工编号和性别2列,并且确认性别中所有的值都来自于emp表的性别列中;

eaaa9d01d5b9549f3a72a647e23b7f80.png

5)       创建雇员表emp_3,有员工编号、工资和扣款3列,要求工资必须大于扣款,并为该约束命名为last_salary;

d95c772a5f63983fd1424cde9a4270a5.png

四、实验报告要求

1、 实验报告格式要求

包括内容:标题、实验内容、实验步骤、实验中遇到的问题及解决方案

2、 实验报告内容要求

(1)     标题参看实验指导标题+“实验报告”,如“实验一 MySQL的安装与命令初步实验报告”;

(2)     实验内容与实验指导中相同;

(3)     实验步骤中将自己实验中的每个步骤的命令和操作结果显示界面进行截图完善。

(4)     实验中遇到的问题及解决方案中如实地将自己的问题的解决过程记录出来。

3、 实验报告提交要求

每次实验课结束之后,每个人需要提交实验报告,实验报告命名为:学号姓名

五、补充说明

实验报告的提交和完成情况将作为期末考评的一部分,希望每位同学认真完成每次安排的实验,并按要求按时提交实验报告。

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值