《数据库建模》课程设计报告
系 部: 软件学院 专 业: 计算机信息管理
班 级: 信管102
姓 名: 杨阳/赵生海 指导教师: 陈键
二○一一年 六 月 十五 日
目 录
一.需求分析 .............................................................................. 2 二.概念结构设计 ...................................................................... 2 三.逻辑结构设计 ...................................................................... 3 四.物理设计 .............................................................................. 4 五.总结 ....................................................................................... 5 六.参考文献 .............................................................................. 5 七.附录 ....................................................................................... 5
1
学生信息管理系统数据库设计与实现
系统名称:学生信息管理系统
一.需求分析
学生信息管理数据库用来储存和处理学生的各类信息,经过认真的详细调查和需求分析,确定学生信息管理系统数据库主要有以下需求:
(1) 该“学生管理系统”只是对数据库应用技术的一个样本数据库的实例, 重在对数据库一些方法的熟悉与掌握,其中包括从数据库的概念模型到ER图的绘制,再到数据库模式的建立(即为数据库及其基本表的建立),而后数据的录入(在此从略),最后完成一些简单的关系运算表达式的表达和相关的Select 查询语句的使用。
(2)系统结构简述:
本系统包括六个实体:学生;课程;教师;学院
实体之间的关系转换为其他四个表:选修;代课(都是多对多关系的转换) 实体“学院”与“学生”之间一对多的关系转换到表“学生”中 注:各个基本表中关键字已在关系模式中说明 (3)该数据库需要进行如下数据处理: a. 要查询所有学生的个人信息:
学号,姓名,性别,学院编号,所在专业
b. 学生要查询本学期所开课程详细情况(成绩除外),并按“课程类型”分组 输入:学号
输出:学号,姓名,课程名,学分数,学时数
c. 某位教师想查询自己本学期所代的课程及其上课情况: 输入:教师姓名
输出:教师编号,姓名,性别,课程名,上课教室,上课时间
二.概念结构设计
根据调查结果,绘制了以下数据流程图。
学院 所在专业 1 属于 k 学生 m 选修 n 课程 m 教室 成绩 时间 代课 n 2 教师
图1.总ER图
学号# 姓名 性别 学生 课程名 课程编号# 课程 学时数 教师编号# 姓名 性别 学分数 教师
图2.课程部分ER图
学院编号# 名称 学院类型 院长编号 学院 图3.学院部分ER图
三.逻辑结构设计
根据ER图转换为关系模型的规则,转换为如下逻辑结构,带下划线的属性名称为主键。
学生(学号,姓名,性别,学院编号,所在专业) 课程(课程编号,课程名,学分数,学时数) 选修(学号,课程编号,成绩) 教师(教师编号,姓名,性别)
代课(课程编号,教师编号,上课教室,上课时间) 学院(学院编号,名称,学院类型,院长编号)
3
四.物理设计
这里选择SQL SERVER2005作为数据库平台,根据各个关系数据量进行估算,设计数据库的文件定义如下各表所示:
表1.学生表结构 字段名 类型 特殊属性 学号 char(20) 主健 姓名 char(20) not null 性别 char(20) not null 学院编号 char(20) not null 所在专业 char(20) not null 表2.课程 字段名 类型 特殊属性 课程编号 char(20) 主键 课程名 Char(20) not null 学分数 Int not null 学时数 Int not null 表3. 教师 字段名 类型 特殊属性 教师编号 char(20) 主键 姓名 Char(20) not null 性别 Char(20) not null 表4. 学院 字段名 类型 特殊属性 学院编号 char(20) 主键 院长编号 char(20)) not null 名称 Char(20) not null 学院类型 Char(20) not null 表5.选修 字段名 类型 特殊属性 学号 char(20) 主键 课程编号 char(20) 主键 成绩 Int not null 表6. 代课 字段名 类型 特殊属性 教师编号 char(20) 主键 课程编号 char(20) 主键 上课教室 char(20) not null 上课时间 char(20) not null
4
五.总结
制作这个课程设计让我较清楚的了解到了学生与学校、老师、课程之间的关系,也了解到了学校是如何管理学生的各门成绩和选课等信息的。
六.参考文献
陈伟 编著《SQL Server 2005 数据库应用与开发教程》北京:清华大学出版社,2007 (美)刘耀儒 编著 《新概念SQL Server 2005 从入门到精通(中文版)》电子工业出版社 2006
江国粹 魏树峰 主编《SQL Server 2005 实用教程》安徽大学出版社 2011
七.附录
数据库的建立用企业管理器,基本表的建立用SQL语言:
数据库名称为:SM_System 建立数据库的SQL代码如下: Create database SM_System
建立基本表的SQL代码如下:
create table 学生(学号 char(20) primary key, 姓名 char(20) not null, 性别 char(20) not null, 学院编号 char(20) not null, 所在专业 char(20) not null)
create table 课程 (课程编号 char(20) primary key, 课程名 char(20) not null, 课程类型 char(20) not null, 学分数int, 学时数 int)
create table 选修(学号 char(20) not null, 课程编号 char(20) not null, 成绩 int,
Primary key (学号, 课程编号))
create table 教师(教师编号 char(20) primary key, 姓名 char(20) not null, 性别 char(20) not null)
5
create table 代课(课程编号 char(20) not null, 教师编号 char(20) not null, 上课教室 char(20) not null, 上课时间 char(20) not null, Primary key (教师编号, 课程编号))
create table 学院(学院编号 char(20) primary key, 名称 char(20) not null, 学院类型 char(20), 院长编号 char(20))
6
因篇幅问题不能全部显示,请点此查看更多更全内容