1 实验目的
- 了解和掌握数据库设计的有关理论和方法。
- 可以灵活运用数据库设计方法设计一个中小型规模的数据库。
2 实验内容
2.1 数据库概念模型设计
- 进行需求分析。
- 设计数据库概念模型,画出E-R图。
2.2 数据库逻辑模型设计
- 根据数据库概念模型设计数据库的逻辑模型。
- 对逻辑模型进行优化。
2.3 数据库物理模型设计
- 针对某种DBMS,设计数据库物理模型,包括表空间、表和索引等于物理存储有关的设计。
- 优化物理模型
- 生成某种DBMS的SQL语句,创建数据库及其表。
2.4 装载数据
- 收集真实数据或者生成模拟数据。
- 批量加载数据到数据库中。
- 设计一系列SQL语句,尤其是连接查询、嵌套查询等SQL语句,已测试数据库性能。
3 实验要求
- 可以借助POWERDESIGNER等系统分析与设计辅助工具进行数据库设计,也可以使用WORD文件直接生成各种设计文档。
- 选择的数据库应用系统应该规模适中,不宜太大太复杂,可能做不完;也不宜太小太简单,甚至仅有三两个表组成。
- 要设计良好的数据库完整性约束。
- 参考附件1的要求进行。
4 实验步骤
4.1 数据库概念模型设计
- 进行需求分析。
- 设计数据库概念模型,画出E-R图。
4.2 数据库逻辑模型设计
- 根据数据库概念模型设计数据库的逻辑模型。
- 对逻辑模型进行优化。
学生(学生序号,学生姓名,性别,年龄,系)
课程(课程序号,课程名称,学分)
选课(学生序号,课程序号,成绩)
4.3 数据库物理模型设计
- 针对某种DBMS,设计数据库物理模型,包括表空间、表和索引等于物理存储有关的设计。
- 优化物理模型
- 生成某种DBMS的SQL语句,创建数据库及其表。
4.4 装载数据
- 收集真实数据或者生成模拟数据。
- 批量加载数据到数据库中。
- 设计一系列SQL语句,尤其是连接查询、嵌套查询等SQL语句,已测试数据库性能。
其他
查询王一、王二都学习的课程
查询王一学习了,但张三没学习的课程
5 总结与体会
5.1 实验中出现的问题及其解决方案
1.注意S1与S2的连接 和 and别忘了写
5.2 总结
温习了前几节课学习的内容,加深了印象,巩固了知识的掌握
- 附件1
以书3.2节的学生数据库系统为例,进行设计,包括:学生表,课程表,选课表。
要求:
- 用数据定义sql语句定义表。表中的属性参考书3.2节。数据类型自定。定义表语句中要有主码、外码、自定义的约束等。性别属性取值{“男”,“女”},年龄取值5~99,成绩取值0~100,专业名称不能重复,姓名不可以取值空,课程名称不可以取值空,课程学分取值1~8。
- 用insert语句,往每个表中插入5条以上的数据。
- 根据书上介绍的各种查询语句,为每种类型的查询语句实现2条以上的不同种类sql语句。
- 根据上上介绍的数据更新语句,分别实现5个不同种类的update语句、5个不同种类的delete操作。
- 创建普通用户:“张三”,“李四”。用户“张三”可以查询学生表,可以修改选课表,再没有其他权限。用户“李四”只可以修改课程表。所有用户都不可以再将自己拥有的权限给其他用户的能力。
- 创建视图v1,所有男学生的视图。创建视图v2所有成绩及格的学生信息视图。创建视图v3,只能够看到学生的学号、姓名两个属性值。