软件数据库设计
一、引言
编写目的
    编写本数据库的目的在于有利于后期的维护,其主要读者为后期的系统维护人员。
以便于他们在维护时方便地掌握原数据库环境。
背景
a.待开发的数据库名称为:Student.mdb。使用该数据库的系统为:教务管理。
b.本项目是由计算机科学与技术学院0811班郭琼、王娟、何婷婷、李姣、金欢欢、褚强、孙超为了进行软件测试实训而进行开发的
定义
本数据库所用术语为:数据库,表,记录,字段
其中数据库名称和表名为英文词组。数据库名:Student.mdb
    表名:如XsJs等,表名清晰明了,有利于阅读。
4  参考资料
《中文office 2000》,《VB数据库开发》等。
二、外部设计
标识和状态
本系统仅包含一个数据库,所以数据库的唯一标志也是数据库的名字即Student.mdb
该数据库所包含的所有表也都以其表名为唯一标志,而不在存在其他表示方式。
使用它的程序
对应系统表单、控件、过程的各个程序和模块,诸如查询,修改,添加,调整等。
约定
程序员在利用或修改该数据库时需要注意的是在各个表中,关键字段为表中的学号,教师号,班号,以及用户帐号,程序员在利用数据库时应当优先考虑这些字段的唯一性和完整性。
支持软件
该数据库所用的DBMSSQL server。该数据库管理系统具有操作简便,维护容易的特点,对中小型数据库的管理非常适用。
3、结构设计
  1、学生模式设计:
  根据关系模型的转换原则,上面的E—R图可转换为如下所示的关系模型:
Bj(Bno,Bname,Bdate,Btea,Bmon,Bparty)
各项含义分别为:班级(班号,班名,建班时间,班主任,班长,团支书)
其中班号是班级表的是主码
Xs(Xno,Bno,Xname,Xbir,Xaddr,Xnation,Xface,Xid,Xcall,Xsno,Xmail,Xdate)
其中各项含义分别为:(学号,班号,学生姓名,性别,出生日期,籍贯,
民族,政治面貌,身份证号,,宿舍号,邮箱,入学日期
其中学号是学生表的主码,班号是学生表的外码 
A、数据结构:
        班级
        含义说明:描述了组成班级的信息结构
        组成:班号,班名,建班时间,班主任,班长,团支书
        学生
        含义说明:描述了组成学生的信息结构
        组成:学号,班号,学生姓名,性别,出生日期,籍贯,民族,政
              治面貌,身份  证号,,宿舍号,邮箱,入学日期
B、数据表
    根据上面的E-R图设计及关系模型的设计,得出数据表的设计,在本系统
  中主要的数据表如下:
字段名称
数据类型
可否为空
说明
班号Bno
Char(8)
主键
4位院系代码+2位班级代码+2位班自由编码
班名Bname
Varchar(50)
Not null
班级名称
建班时间Bdate
Datetime(8)
Null
学生入学时间
班主任Btea
Char(10)
Null
班主任
班长Bmon
Char(10)
Null
班长
团支书BParty
Text(6)
Null
团支书
                      1:班级基本信息表(Bj
字段名称
数据类型
可否为空
说明
学号Xno
Char(8)
主键
4位院系代码+2位班代码+2位学号代码
班号Bno
Char(8)
Not Null
4位院系代码+2位班级代码+2位班自由编码
学生姓名Xname
Char(10)
Not Null
姓名
性别Xsex
Char(2)
Not Null
性别(男,女)
出生日期Xbir
Datetime(8)
Null
出生日期
籍贯Xaddr
Varchar(50)
Null
学生籍贯
民族Xnation
Varchar(30)
Null
民族名称
政治面貌Xface
Varchar(50)
Null
现阶段政治面貌
身份证号Xid
Char(20)
Null
18位身份证号
Xcall
Varchar(30)
Null
手机号或宿舍号
宿舍号Xsno
Varchar(30)
Null
宿舍楼号(2)+房间号(4)
邮箱Xmail
Varchar(30)
Null
邮箱号
入学日期Xdate
Datetime8
Null
入学日期
        2:学生基本信息表(Xs)
2、教师模式
  根据关系模型的转换原则,上面的E—R图可转换为如下所示的关系模型
Kc(Kno,Kname,Jno,Kpno,Kpname,Khour,Kciredit)
其中各项含义分别为:课程(课程号,课程名,教师编号,先修课程号,先
修课程名,学时,学分)
其中课程号是课程表的主码
Cj(Cid,Bno,Xno,Kno,Cscore)
其中各项含义分别为:成绩(成绩id ,班号,学号,课程号,成绩)
其中成绩id是成绩表的主码,班号、学号、课程号是成绩表的外码
A、数据结构
        课程表
        含义说明:定义一个描述学生所选的课程的信息
    组成:课程号,课程名,教师编号,先修课程号,先
              修课程名,学时,学分
    成绩表
        含义说明:定义一个描述学生所选的课程的成绩
        组成:成绩id ,学号,课程号,成绩
B、数据表
根据上面的E-R图设计及关系模型的设计,得出数据表的设计,在本系统中主要的数据表如下:
字段名称
数据类型
可否为空
说明
课程号Kno
Char8
主键
4位院系代码+2位课程代码+2位自由编码
课程名称Kname
Varchar50
Not null
课程名称(中文或英文)
教师编号Jno
Char8
Not null
4位院系代码+2位教师代码+2位自由编码
先修课程号Kpno
Char8
Null
4位院系代码+2位课程代码+2位自由编码
先修课程名称Kpname
Varchar50
Null
课程名称(中文或英文)
学时Khour
Int4
Null
所学课时
学分Kcredit
Float6
Not null
学分
课程信息表(Kc)
学生管理系统数据库设计说明书
字段名称
数据类型
可否为空
说明
成绩Cid
Numeric9
主键
标识种子1、自增1
班号Bno
Char8
外键
4位院系代码+2位班级代码+2位班自由编码
学号Xno
Char8
外键
4位院系代码+2位班代码+2位学号代码
课程号Kno
Char8
外键
4位院系代码+2位课程代码+2位自由编码
成绩Cscore
Float(8)
Not null
成绩,默认为0
                            4    成绩信息表(CJ
四、安全保密设计
由于本系统要求的保密等级不高,故只在数据库中建立一张用户表,并分别设置超级用户,普通用户标志,在程序中根据用户标志来分别赋予不同权限。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。