学生系统数据库设计
系统E-R图:学生信息表,学校信息表,教师信息表,课程表,成绩等表之间的联系描绘出关系模型。学籍变动(学生留降级处理,学生跳升级处理,学生借读处理,学生休学处理,学生复学处理,学生调班处理,学生转校处理,学生退学处理,学籍变动查询,学生试读查询,学生试读登记)1.学生信息表:学号,姓名,性别,民族,籍贯,入学时间,班级,专业,出生日期。(学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电
概念设计
E-R图也即实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
我所设计的实体有:学生信息实体、课程信息实体、教师信息实体、成绩信息实体、班级信息实体、学院信息实体等。
(1)学生信息实体E-R图:

图4.1 学生信息E-R图
(2)课程信息E-R图:

图4.2课程信息E-R图
(3)教师信息E-R图:

图4.3 教师信息E-R图
系统E-R图:学生信息表,学校信息表,教师信息表,课程表,成绩等表之间的联系描绘出关系模型。联系是指学生管理系统中各个实体的联系,拥有一对一、一对多、多对多的联系。如图4.4所示:

图4.4 学生管理系统总E-R图
二、逻辑设计
逻辑结构设计阶段的任务是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。逻辑结构设计一般分为三步进行:从E-R图向关系模式转化 数据库的逻辑设计主要是将概念模型转换成一般的关系模式,也就是将E-R图中的实体、实体的属性和实体之间的联系转化为关系模式。一个实体类型转换为一个关系模型,将每种实体类型转换为一个关系,实体的属性就是关系的属性,实体的关键字就是关系的关键字。设计逻辑结构时一般要分三步进行:
学籍管理(学生注册,导入学生,学生查询,学生统计,学生毕业,修改学籍)
收费管理(费用减免,学生交费,交费查询,未交费查询)
成绩管理(成绩录入,成绩查询,班级成绩统计,年级成绩统计,班级成绩明细,不及格名单,学生单科名次,学生总分名次)
学籍变动(学生留降级处理,学生跳升级处理,学生借读处理,学生休学处理,学生复学处理,学生调班处理,学生转校处理,学生退学处理,学籍变动查询,学生试读查询,学生试读登记)
学生信息管理(系统管理,学籍管理,学籍变动,收费管理,宿舍管理,成绩管理,学生评语,消息文件管理)
下面列出几个主要的数据库表设计:
1.学生信息表:学号,姓名,性别,民族,籍贯,入学时间,班级,专业,出生日期。详细情况如表4.1:
表4.1学生信息表
|
序号 |
TableName(表名) |
FieldName(字段) |
FieldType(字段类型) |
IsPrimaryKey(是否主键)1为主键 |
|
1 |
student_Info |
student_id |
[varchar](15) NOT NULL |
1 |
|
2 |
student_Info |
student_name |
[varchar](20) NULL |
0 |
|
3 |
student_Info |
student_gender |
[char](2) NULL |
0 |
|
4 |
student_Info |
birth_date |
[varchar](15) NULL |
0 |
|
5 |
student_Info |
class_no |
[char](3) NOT NULL |
0 |
|
6 |
student_Info |
tele_number |
[varchar](20) NULL |
0 |
|
7 |
student_Info |
in_date |
[varchar](15) NULL |
0 |
|
8 |
student_Info |
address |
[varchar](30) NULL |
0 |
|
9 |
student_Info |
comment |
[varchar](100) NULL |
0 |
2.课程信息表:课程编号,课程名称,开课学期,学分等。详细情况如表4.2:
表4.2课程表
|
序号 |
TableName(表名) |
FieldName(字段) |
FieldType(字段类型) |
IsPrimaryKey(是否主键)1为主键 |
|
1 |
course_info |
course_No |
[int] NOT NULL |
1 |
|
2 |
course_info |
course_Name |
[varchar](30) NULL |
0 |
|
3 |
course_info |
course_type |
[char](20) NULL |
0 |
|
4 |
course_info |
course_des |
[varchar](60) NULL |
0 |
3.教师信息表:教师编号,教师名称,职称,学院编号等。详细情况如表4.3:
表4.3教师信息表
|
序号 |
TableName(表名) |
FieldName(字段) |
FieldType(字段类型) |
IsPrimaryKey1为主键 |
|
1 |
teacher_info |
teacher_id |
[varchar](15)NOTNUL |
1 |
|
2 |
teacher_info |
teacher_Name |
[varchar](2) NULL |
0 |
|
3 |
teacher_info |
birth_date |
[varchar](15) NULL |
0 |
|
4 |
teacher_info |
address |
[varchar](30) NULL |
0 |
三、物理设计
物理设计是对给定的逻辑数据模型配置一个最适合应用环境的物理结构。
物理设计的输入要素包括:模式和子模式、物理设计指南、硬件特性、OS和DBMS的约束、运行要求等。
物理设计的输出信息主要是物理数据库结构说明书。其内容包括物理数据库结构、存储记录格式、存储记录位置分配及访问方法等。
1.存储结构
存储结构是建立一种由逻辑结构到存储空间的映射。 存储结构是把一组结点存放在按地址相邻的存储单元里,结点间的逻辑关系用存储单元的自然顺序关系来表达的,即用一块存储区域存储线性数据结构,为使用整数编码访问数据结点提供了便利。
2.索引的创建
为student表创建一个以student_id为索引的关键字的唯一聚簇索引
1)展开数据库中的表右键学生表,单击所有任务弹出的索引管理。
2)在窗体点新建索引名称为student_id_index,点击复选框“聚簇索引” 、“惟一值”。
3.事务日志文件备份及存放
ACCESS创建数据库的时候,会同时创建事物日志文件,事物日志存储在一个单独的日志文件上。在修改写入数据库之前,事物日志会自动地记录对数据库对象所做的所有修改,事物日志有助于防止数据库损坏。日志文件与数据文件要分开放在不同的磁盘上,这样事物日志就可以单独的备份,事务日志不会抢占数据库的空间,可以很容易的监测事务日志的空间。
4.存取方法:
存取方法是快速存取数据库中数据的技术。数据库管理系统一般都提供多种存取方祛。常用的存取方法有二类。第一类是索引方法,第二类是聚簇(Cluster)方法。在本数据库中的:
学生(学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电话,入学时间)
课程信息(课程编号、课程名称、开课日期、学时。)
整个系统需要调用学生表、成绩表等,所以学生表属性“学号”,成绩表表中的属性“学号”,将经常出现在查询条件中,可以考虑在上面建立聚簇索引以提高查询效率。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)