暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据库原理及应用课程上机实验-实验5:索引和视图操作(2学时)

HMC开源 2024-10-04
344

一、实验目的

1、理解索引的概念与类型;

2、掌握创建、更改、删除索引的方法;

3、掌握维护索引的方法;

4、理解视图的概念;

5、掌握创建、更改、删除视图的方法;

6、掌握使用视图来访问数据的方法;

二、实验环境

装有软件MySQL5.7或更高版本的PC电脑一台;

三、实验步骤及实验要求

按照下面的实验内容要求完成作业,将作业结果的每一步截图粘贴到word文档中即可。每一个实验都必须编写实验报告,要求如下:

1、实验报告用word编写;

2、word文件命名的格式统一要求:为以“杨健”同学19号为例,他所做的第4次实验的实验报告应该命令为:“DB实验4-- 19号--杨健”(即格式是:实验序号—课内序号--姓名);课内序号现在是一个人一门课一个号,同一个人在不同课序号会不同,回头我会将课程名单发到群里,自己查阅你自己在本门课中的序号。

3、实验报告用统一的封面,封面模板到时发给大家;

4、报告中截取每题主要步骤结果的截图、实验结果截图;

5、实验报告最后要加上实验总结,总结部分必须写出自己的切身体会;

6、实验报告如有雷同、抄袭现象,后果自负;

7、实验报告上交截止时间:上机后一周之内;

8、实验上交方式:由学委收集齐全后,统一交付老师:

四、实验内容

1、JobDB数据库中有登录用户信息【userlogin】表和个人信息【information】表,具体如表结构所示。

USERLOGIN 表的结构

字段名

字段描述

数据类型

主键

外键

非空

唯一

自增

id

编号

INT(4)

是

否

是

是

是

name

用户名

VARCHAR(20)

否

否

是

否

否

Password

密码

VARCHAR(20)

否

否

是

否

否

info

附加信息

TEXT

否

否

否

否

否

information表的结构

字段名

字段描述

数据类型

主键

外键

非空

唯一

自增

id

编号

INT(4)

是

否

是

是

是

Name

姓名

VARCHAR(20)

否

否

是

否

否

Sex

性别

VARCHAR(4)

否

否

是

否

否

Birthday

出生日期

DATE

否

否

否

否

否

Address

家庭地址

VARCHAR(50)

否

否

否

否

否

Tel

电话号码

VARCHAR(20)

否

否

否

否

否

pic

照片

BLOB

否

否

否

否

否

请在上述2表上完成如下操作:

create table userlogin
(
id INT(4),
`name` VARCHAR(20),
`Password` VARCHAR(20),
info TEXT,
primary key (id)
);

create table information
(
id INT(4),
`name` VARCHAR(20),
sex VARCHAR(4),
birthday DATE,
address VARCHAR(50),
tel VARCHAR(20),
pic BLOB,
primary key (id)
);

1)在name字段创建名为index_name的索引;

CREATE INDEX index_name
ON userlogin(name);

CREATE INDEX index_name
ON information(name);

2)在birthday和address两个字段上创建名为index_bir的多列索引;

CREATE INDEX index_bir
ON information(birthday,address);

3)用 ALTER TABLE 语句创建名为index_id的惟一性索引;

ALTER TABLE userlogin 
ADD UNIQUE index_id(id);

ALTER TABLE information
ADD UNIQUE index_id(id);

4)删除 userlogin 表上的index_ userlogin 索引;

SHOW INDEX FROM userlogin;

CREATE INDEX index_userlogin
ON userlogin(name);

DROP INDEX index_userlogin ON userlogin;

5)查看 userlogin 表的结构;

DESCRIBE userlogin;

DESC userlogin;

6)删除information 表上的index_name索引;

SHOW INDEX FROM information;

DROP INDEX index_name ON information;

7)查看information表的结构;

DESCRIBE information;

DESC information;

2、在JobDB数据库中,有聘任人员信息表【Work_lnfo】表,其表结构如下表所示:

字段名

字段描述

数据类型

主键

外键

非空

唯一

自增

Id

编号

INT(4)

是

否

是

是

否

Name

名称

VARCHAR(20)

否

否

是

否

否

Sex

性别

VARCHAR(4)

否

否

是

否

否

Age

年龄

INT(4)

否

否

否

否

否

Address

家庭地址

VARCHAR(50)

否

否

否

否

否

Tel

电话号码

VARCHAR(20)

否

否

否

否

否

create table Work_lnfo
(
id INT(4) unique key,
`name` VARCHAR(20) not null,
sex VARCHAR(4) not null,
age INT(4),
address VARCHAR(50),
tel VARCHAR(20),
primary key (id)
);

-- 1.'张明','男',19,'北京市朝阳区','1234567'
-- 2.'李广','男',21,'北京市昌平区','2345678'
-- 3.'王丹','女',18,'湖南省永州市','3456789'
-- 4.'赵一枚','女',24,'浙江宁波市','4567890'

INSERT INTO Work_lnfo VALUE(1,'张明','男',19,'北京市朝阳区','1234567');
INSERT INTO Work_lnfo VALUE(2,'李广','男',21,'北京市昌平区','2345678');
INSERT INTO Work_lnfo VALUE(3,'王丹','女',18,'湖南省永州市','3456789');
INSERT INTO Work_lnfo VALUE(4,'赵一枚','女',24,'浙江宁波市','4567890');

SELECT * FROM Work_lnfo;

其中表中练习数据如下:

1.'张明','男',19,'北京市朝阳区','1234567'

2.'李广','男',21,'北京市昌平区','2345678'

3.'王丹','女',18,'湖南省永州市','3456789'

4.'赵一枚','女',24,'浙江宁波市','4567890'

按照下列要求进行操作:

1)创建视图info_view,显示年龄大于20岁的聘任人员id,name,sex,address信息。

CREATE VIEW info_view
AS
SELECT id,`name`,sex,address
FROM Work_lnfo
WHERE age > 20;

SELECT * FROM info_view;

2)查看视图info_view的基本结构和详细结构:(1)查看基本结构;(2)查看详细结构;

DESCRIBE info_view;

DESC info_view;

SHOW CREATE VIEW info_view;

# 查看视图信息(显示数据表的存储引擎、版本、数据行数和数据大小等)
SHOW TABLE STATUS LIKE 'info_view'

3)查看视图info_view的所有记录;

SELECT * FROM info_view;

4)修改视图info_view,满足年龄小于20岁的聘任人员id,name,sex,address信息;

SELECT * FROM info_view;

CREATE OR REPLACE VIEW info_view
AS
SELECT id,`name`,sex,address
FROM Work_lnfo
WHERE age < 20;

5)更新视图,将id号为3的聘任员的性别,由“男“改为“女”;

UPDATE info_view SET sex = '男' WHERE id = 3;

SELECT * FROM info_view;

6)删除info_view视图;

DROP VIEW info_view;


文章转载自HMC开源,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论