什么是数据库:数据库(Database)是按照数据结构来组织、和管理数据的建立在计算机存储设备上的仓库。

简单来说是本身可视为电子化的——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。

在经济管理的日常工作中,常常需要把某些相关的数据放进这样的"仓库",并根据管理的需要进行相应的处理。

严格来说,数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据指的是以一定的数据模型组织、描述和储存在一起、具有尽可能小的、较高的数据独立性和易扩展性的特点并可在一定范围内为多个用户共享。

数据库应用在那些方面:或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名等)存放在表中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。

实训任务一 完成表结构设计并设计测试数据

1、 实训内容 :如下表一样完成computer、student、course、sc、card、reinformation表结构的设计及相应测试数据的设计。

Mysql实训任务书(Mysql实训任务书)(1)

Mysql实训任务书(Mysql实训任务书)(2)

Mysql实训任务书(Mysql实训任务书)(3)

Mysql实训任务书(Mysql实训任务书)(4)

Mysql实训任务书(Mysql实训任务书)(5)

Mysql实训任务书(Mysql实训任务书)(6)

Mysql实训任务书(Mysql实训任务书)(7)

Mysql实训任务书(Mysql实训任务书)(8)

Mysql实训任务书(Mysql实训任务书)(9)

Mysql实训任务书(Mysql实训任务书)(10)

Mysql实训任务书(Mysql实训任务书)(11)

Mysql实训任务书(Mysql实训任务书)(12)

Mysql实训任务书(Mysql实训任务书)(13)

实训任务二 完成数据库、表的创建

1、 创建computer_rooms_db数据库:

2、 将任务一下设计的数据表创建为computer_rooms_db数据库下的表。

3、 为上述表添加相应的主键及约束(命令完成)。

(1)(要求检查相关表是否建立主键,若没有则修改表为其添加相应的主键。)

(2)(根据以下要求修改表添加相应的默认约束)

(3)为相关表创建相应的参照完整性

(4)修改表

· 为机房表room添加字段管理员联系电话字段(admin_phone char(13))。

· 修改card表,添加序号列,并设置为主键。

· 调整computer表中pc_room_name字段到Pc_rate之前。

· 重命名表名room为pc_rooms。

实训思考:

1、 mysql数据库的结构及存储特点。

2、 mysql修改数据表的语法结构、关键字有哪些,分别起什么作用。

3、 删除表的命令是什么?要将实训中的student表删除,命令怎么写?

4、 要将card表中经办人字段删除,相应的SQL语句怎么写?

实训任务三 数据操作

1. 在mysql可视化工具下完成pc_rooms表数据添加操作。

2. 应用SQL单行插入数据命令,完成computer表数据添加。

3. 应用SQL多行插入数据命令,完成card表数据添加。

4. 应用load data infile 命令,完成student表、course表数据添加。

5. 从excel表导入数据,完成sc表数据添加。

6. 使用update语句将pc_rooms表中的机房名"信-224"修改为'信-223'。

7. 使用delete语句将2017年以前的充值记录全部删除。

实训思考:修改、删除语句where子句的作用。

实训任务四 数据查询

1. 查询comuter表全部数据。

2. 查询student表中的查找所有姓'李'的学生的基本信息。

3. 查询指定计算机机房的课程安排情况。

4. 查询course表中查找课程名称包含 'JAVA'或'数据库'的课程开设基本信息。

5. 查询上课时间段是'周二''1-2节'的课程编号、课程名、专业、教师、上机地点。

命令为:

6. 从card表中查询所有近30天没有充值,且余额<=5的卡号。

命令为:

7. 显示computer表中全部计算机品牌,去掉重复行。

命令为:

高级查询

1. 查询每位学生的学号、专业、课程名称及各科的成绩,并按成绩降序排序。

2. 查询专业为'计算机应用'的学生的学号、姓名和班级编号。

3.查询最后一次充值金额高于20的卡号、班级编号、学号、姓名、余额。

命令为:

4. 对card表,求出每名学生的学号、平均充值金额。

5. 对reinformation表,求出每名学生学号、平均消费金额

6.将4-5的查询结果联合显示。

实训任务五 视图的使用

1、建立机房信息视图(v_pc_rooms)

2、建立计算机信息视图(v_computers)

3、建立学生充值卡信息视图(v_cards)

4、建立学生上机信息视图(显示学号,姓名,课程,教师,上课周次,上机时间,上机地点)

5、建立班级上机信息视图(显示班级编号,课程,教师,上课周次,上机时间,上机地点)注意:要消除重复行。

6、建立日机房费用统计信息视图(机房名,上机日期,sum(消费金额))

7、建立学生上机费用统计信息视图(学号、卡号、sum(充值金额) as充值总额、sum(消费金额) as 消费总额、余额=充值总额-消费总额)

视图操作数据

1、通过视图添加条机房信息。

2、通过视图修改一条计算机信息。

3、通过视图删除一条学生充值卡信息。

实训任务六 索引的创建与使用查看

1. 使用mysql可视化工具为course表创建一个课程名字段的的唯一非索引cname_index。

2. 查看索引详细信息

3. 执行以课程名为条件的查询语句,查看索引的使用情况。

4. 使用SQL语句为computer表"配置参数"字段创建全文索引,名为fulltxt_parm_index,执行在该字段上的查询。

5. 使用SQL命令为coures表创建(专业、教师)复合索引course_re_index,专业升序、教师降序;然后分别在该执行单条件查询(分别以专业、教师为条件)、多条件查询(课程名、教师;专业、教师;专业、课程名);查看 course_re_index索引的使用情况。

实训任务七 用户权限管理

1、分别为mysql创建机房管理员(dba_room_admin)、 充值人员(dba_ Recharge 、dba_student、dba_teacher四个用户。

2、分别为四个用户授予合理权限。

3、对于不合理权限予以收回。

实训任务八 存储过程与触发器

1. 建立添加机房存储过程up_ roomadd,添加数据由输入参数传入储存过程。然后执行该存储过程。

2. 创建存储过程up_consume,查看建立学生上机费用统计信息视图,学号由输入参数传入存储过程。

3. SQL语句删除up_ roomadd过程。

4. 触发器实现当学生在reinformation表下机结账后,更新card表余额值。

,