2.3逻辑结构设计
2.3.1概念结构向关系模式转换
每个实体定义的属性如下:
班级信息表:班级(班级编号,年级,班级名称,班级简称,人数,导员)
籍贯代码表:籍贯代码表(籍贯编号,籍贯)
民族代码表:民族代码表(民族编号,民族)
政治面貌代码表:政治面貌代码表(政治面貌编号,政治面貌)
学籍代码表:学籍代码表(学籍编号,学籍名称)
选课表:选课(编号,学号,课序号)
学生表:学生(学号,姓名,性别,年龄,所在系,班级编号,政治面貌编号,民族编号,籍贯编号,学籍编号)
成绩表:成绩表(编号,学号,课程编号,成绩,考试次数,是否补修,是否重考,是否已经确定考试成绩)
课程信息表:课程信息(课程编号,课程名称,先修课,教师,系别,学分)
费用表:费用(费用单号,学号,学费,住宿费,课本费,杂费,补考费)
课程表:课程表(编号,课序号,课程编号,上课时间天,上课时间节,上课地点)
2.3.2关系模式优化
班级信息表:班级(班级编号,年级,班级名称,班级简称,人数,导员)
籍贯代码表:籍贯代码表(籍贯编号,籍贯)
民族代码表:民族代码表(民族编号,民族)
政治面貌代码表:政治面貌代码表(政治面貌编号,政治面貌)
学籍代码表:学籍代码表(学籍编号,学籍名称)
选课表:选课(学号,课程编号,课序号)
学生表:学生(学号,姓名,性别,年龄,所在系,班级编号,政治面貌编号,民族编号,籍贯编号,学籍编号)
成绩表:成绩表(学号,课程编号,成绩,考试次数,是否补修,是否重考,
是否已经确定考试成绩)
课程信息表:课程信息(课程编号,课程名称,先修课,教师,系别,学分)
费用表:费用(费用单号,学号,学费,住宿费,课本费,杂费,补考费)
课程表:课程表(课序号,课程编号,上课时间天,上课时间节,上课地点)
2.3.3创建数据库
打开SQL Server企业管理器,新建一个数据库,名称为“教务管理系统”,完成数据库的设计。
2.3.4创建数据表
(1)创建“班级”数据表
CREATE TABLE 班级
(班级编号 VARCHAR(14) NOT NULL,
年级 VARCHAR(4) ,
班级名称 VARCHAR(30),
班级简称 VARCHAR(16),
人数 NUMERIC(3,0),
导员 VARCHAR (8))
(2)创建“学生”数据表
CREATE TABLE 学生
(学号 VARCHAR(14) NOT NULL,
姓名 VARCHAR(8),
性别 VARCHAR(2),
年龄 SMALLINT,
所在系 VARCHAR(20),
班级编号 VARCHAR(14),
政治面貌编号 VARCHAR(2),
民族编号 VARCHAR(2),
籍贯编号 VARCHAR(2),
学籍编号 VARCHAR(2))
(3)创建“课程信息”数据表
CREATE TABLE 课程信息
(课程编号 VARCHAR(8) NOT NULL,
课程名称 VARCHAR(30) NOT NULL,
先修课 VARCHAR(30),
教师 VARCHAR(8),
系别 VARCHAR(20),
学分 SMALLINT)
(4)创建“课程表”数据表
CREATE TABLE 课程表
(课序号 VARCHAR(14) NOT NULL,
课程编号 VARCHAR(8) NOT NULL,
上课时间天 INT NOT NULL,
上课时间节 INT NOT NULL,
上课地点 VARCHAR(20) NOT NULL)
(5)创建“成绩表”数据表
CREATE TABLE成绩表
(学号 VARCHAR(14) NOT NULL,
课程编号 VARCHAR(8) NOT NULL,
成绩 SMALLINT,
考试次数 SMALLINT,
是否补修 VARCHAR(2),
是否重考 VARCHAR(2),
是否已经确定考试成绩 VARCHAR(2))
(6)创建“费用”数据表
CREATE TABLE 费用
(费用单号 VARCHAR(14) NOT NULL,
学号 VARCHAR(14) NOT NULL,
学费 MONEY,
住宿费 MONEY,
课本费 MONEY,
杂费 MONEY,
补考费 MONEY)
(7)创建“选课”数据表
CREATE TABLE 选课