山东信息职业技术学院实验报告
学号: 姓名: 班级: 同组者:
课程名称: 数据库原理及应用 指导老师: 孟秀锦 实验成绩:
四、实验总结:
1、收获
2、存在的问题
21
山东信息职业技术学院实验报告
学号: 姓名: 班级: 同组者:
课程名称: 数据库原理及应用 指导老师: 孟秀锦 实验成绩: 实验十四 索引
一、实验目的:
(1) 理解索引的概念与类型。
(2) 掌握创建、更改、删除索引的方法。 (3) 掌握维护索引的方法。
二、实验要求
1、学生提前准备好实验报告,预习并熟悉实验步骤; 2、遵守实验室纪律,在规定的时间内完成要求的内容; 3、1~2人为1小组,实验过程中独立操作、相互学习。
三、实验内容及步骤
1)使用Navicat图形工具创建、管理索引
(1) 在数据库test下创建workinfo表。创建表的同时在id字段上创建名为index_id的唯一性索引,而且以降序的格式排列。workinfo表结构内容如下表所示:
字段名 id sname Type Address Wages 字段描述 编号 职位名称 职位类别 工作地址 工资 数据类型 INT(10) VARCHAR(20) VARCHAR(10) VARCHAR(50) INT INTYTEXT TEXT 主键 是 否 否 否 否 否 否 外键 否 否 否 否 否 否 否 非空 是 是 否 否 否 否 否 唯一 是 否 否 否 否 否 否 自增 是 否 否 否 否 否 否 Contents 工作内容 extra 附加信息 (2) 创建索引。为name字段创建长度为10的索引index_name,在type和address字段上创建名为index_t的组合索引。
(3)将workinfo表的存储引擎更改为MyISAM类型。
(4)删除索引。删除workinfo表的唯一性索引index_id。
2) 使用SQL语句创建、管理索引
(1) 利用create table语句在test数据库中创建数据表writers,其表结构内容如下表所示。在创建表的同时在w_id字段上添加名称为uniquex的唯一索引。
字段名 id w_name
字段描述 编号 作者姓名 数据类型 INT(10) VARCHAR(20) 主键 是 否 外键 否 否 非空 是 是 唯一 是 否 自增 是 否 22
山东信息职业技术学院实验报告
学号: 姓名: 班级: 同组者:
课程名称: 数据库原理及应用 指导老师: 孟秀锦 实验成绩: w_address 作者地址 VARCHAR(50) 否 否 否 否 否 w_age 年龄 INT 否 否 是 否 否 w_note 说明 TEXT 否 否 否 否 否 (2)使用alter table语句在w_name字段上建立名称为nameidx的普通索引。
(3)使用create index语句在w_address和w_age字段上建立名称为multiidx的组合索引。
(4) 删除索引。利用alter table语句将全文索引ftidx删除,利用drop index语句将nameidx索引删除。
四、思考题
(1) 数据库中索引被破坏后会产生什么结果?
(2) 视图上能创建索引吗?
五、实验总结:
1、收获
2、存在的问题
23
山东信息职业技术学院实验报告
学号: 姓名: 班级: 同组者:
课程名称: 数据库原理及应用 指导老师: 孟秀锦 实验成绩:
实验十五 视图
一、实验目的:
(1) 理解视图的概念。
(2) 掌握创建、更改、删除视图的方法。 (3) 掌握使用视图来访问数据的方法。
二、实验要求
1、学生提前准备好实验报告,预习并熟悉实验步骤; 2、遵守实验室纪律,在规定的时间内完成要求的内容; 3、1~2人为1小组,实验过程中独立操作、相互学习。
三、实验内容及步骤
1) 使用SQL语句创建、管理视图 (1) 创建视图。
① 创建一个名为sc_view1的视图,从数据库gradem的sc表中查询出成绩大于90分的所有学生选修成绩的信息。
② 创建一个名为sc_view2的视图,从数据库gradem的sc表中查询出成绩小于80分的所有学生的学号、课程号、成绩等信息。
③ 创建一个名为sc_view3的视图,由数据库gradem的student、course、sc表创建一个显示“20070303”班学生选修课程(包括学生姓名、课程名称、成绩等信息)的视图。
④ 创建一个从视图sc_view1中查询出课程号“c01”的所有学生的视图。
(2) 修改视图的定义。
修改视图sc_view1,使其从数据库gradem的sc表中查询出成绩大于90分且第3学期的所有学生选修成绩的信息。
(3) 视图的删除。
24
山东信息职业技术学院实验报告
学号: 姓名: 班级: 同组者:
课程名称: 数据库原理及应用 指导老师: 孟秀锦 实验成绩: ① 将视图sc_view1删除。
(4) 管理视图中的数据。
① 从视图sc_view2中查询出学号为“2007030125”、课程号为“a01”的学生选修成绩的信息。
② 将视图sc_view2中学号为“2007030122”、课程号为“c02”的成绩改为87。
③ 从视图sc_view2中将学号为“2007030123”、课程号为“a01”的学生信息删除。
2.思考题
(1) 向视图中插入的数据能进入到基本表中去吗?
(2) 修改基本表的数据会自动反映到相应的视图中去吗?
(3) 如何保证视图使用的安全性?
四、实验总结:
1、收获
2、存在的问题
25