数据库设计说明书(GB8567——88)
1引言
1.1编写目的
本文档描述了机房收费系统数据库的设计,提供了数据酷库设计的可视性以及软件支持所需的信息,应用于机房收费系统开发前期,为后期的数据库设计指引方向,也可以为系统程序设计提供借鉴与参照。
预期读者为数据库设计师,数据库管理员
1.2背景
a.待开发软件名称:机房收费系统
b.项目提出者:米新江教授
开发者:曹祥铭
用户:廊坊师范学院全体教职工和学生
实现该软件的计算中心或计算机网络中心:廊坊师范学院局域网
C.该软件系统同其他机构的基本相互来往关系:由廊坊师范学院信息技术提高班做技术支持。
1.3定义
注册 消费金额 充值 值班 退卡
Login Consume Recharge On work Cancel
结账 基本数据 购卡 上机 下机
Statement Basic_date Buycard Login logout
1.4参考资料
[1]《软件工程事务》刘学俊 李继芳 刘汉中 编著 浙江大学出版社
[2]数据库设计说明书(GB8657——88)
2外部设计
2.1标识符和状态
联系用途,详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。如果该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。
表名 名称 描述信息 状态
基本数据设定 BasicData_Info 基本数据信息 暂时使用
退卡 CancelCard_Info 退卡信息 实验中
日结账单 CheckDay_Info 日结账信息 实验中
周结账单 CheckWeek_Info 周结账信息 实验中
上机 Online_Info 上机信息 实验中
充值 Recharge_Info 充值信息 实验中
学生信息 Student_Info 学生信息 暂时使用
用户信息 User_Info 用户信息 暂时使用
值班 WorkLog_Info 值班信息 实验中
2.2使用它的程序
列出将要使用或访问此数据库的所有应用程序,对于这些应用程序的每一个,给出它的名称和版本号。
应用程序 名称 版本号
学生信息查询 一般用户模块 1.0
学生信息管理 操作员模块 1.0
系统管理 管理员模块 1.0
2.3约定
陈述一个程序员或一个系统分析员为了能使用此数据库而需要了解的建立标号、标识的约定,例如用于标识数据库的不同版本的约定和用于标识库内各个文卷、、记录、数据项的命名约定等。
1)基本数据设定(BasicData_Info)
前缀 说明
HalfCharge 半小时费用
IncreaseTime 递增时间
LeastTime 最少上机时间
ReadyTime 上机准备时间
LeastCash 卡内最少余额
2)退卡信息(CancelCard_Info)
前缀 说明
StudentNo 学号
CardNo 卡号
CancelCash 退卡金额
Date 日期
Time 时间
UserID 用户名
Status 状态
3)日结账单(CheckDay_Info)
前缀 说明
RemainCash 余额
RechargeCash 充值金额
ConsumeCash 消费金额
CancelCash 退卡金额
AllCash 所有金额
Date 日期
Time 时间
4)周结账单(CheckWeek_Info)
前缀 说明
RemainCash 余额
RechargeCash 充值金额
ConsumeCash 消费金额
CancelCash 退卡金额
AllCash 所有金额
Date 日期
Time 时间
5)上机信息(Online_Info)
前缀 说明
CardNo 卡号
CardType 卡的类型
StudentNo 学号
StudentName 学生姓名
Department 系别
Sex 性别
OnDate 上机日期
OnTime 上机时间
Computer 电脑
6)充值记录(Recharge_Info)
前缀 说明
StudentNo 学号
CardNo 卡号
AddMoney 充值金额
Date 日期
Time 时间
UserID 用户名
Status 状态
7)学生信息(Student_Info)
前缀 说明
StudentNo 学号
CardNo 卡号
StudentName 学生姓名
Department 系别
Sex 性别
Grade 年级
Class 班级
Cash 金额
Explain 备注
UserID 用户名
Status 状态
IsCheck 是否结账
8)用户信息(User_Info)
前缀 说明
UserID 账号
PWD 密码
Level 级别
UserName 用户名
9)值班信息(WorkLog_Info)
前缀 说明
UserID 用户名
Level 级别
LoginDate 登录日期
LogoutTime 登录时间
LogoutDate 注销日期
2.4专门指导
向准备从事此数据库的生成、从事此数据库的测试、维护人员提供专门的指导,例如将被送入数据库的数据的格式和标准、送入数据库的操作规程和步骤,用于产生、修改、更新或使用这些数据文卷的操作指导。如果这些指导的内容篇幅很长,列出可参阅的文件资料的名称和章条。
可参考的资料:软件工程哈工大耿建玲视频
数据库设计规范
2.5支持软件
简单介绍同此数据库直接有关的支持软件,如数据库管理系统、存储定位程序和用于装入、生成、修 改、更新数据库的程序等。说明这些软件的名称、版本号和主要功能特性,如所用数据模型的类型、允许 的数据容量等。列出这些支持软件的技术文件的标题、编号及来源。
版本号 主要功能
6.0企业版 可视化高级开发语言
2014 数据库的建立和管理
3结构设计
3.1概念结构设计
说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图。
3.1.1数据实体——关系图
3.1.2数据实体描述
数据实体名称 数据表名 数据实体描述
用户 User_Info 用户信息
学生 Student_Info 学生信息
基本数据 BasicData_Info 基本数据设定
上机 Online_Info 上机信息
充值 Recharge_Info 充值记录
退卡 CancelCard_Info 退卡信息
值班 Onwork 值班信息
日结账 CheckDay 日结账信息
周结账 CheckWeek 周结账信息
3.1.3实体关系描述
1. 一般用户:学生信息(1:N)
关系描述:一般用户负责对学生及上机情况的查询
2. 操作员:学生信息(1:N)
关系描述:一个操作员可以对个学生进行注册、充值、退卡活动
3. 管理员:操作员(1:N)
管理员:一般用户(1:N)
关系描述:一个管理员可以增删多个操作员和一般用户
4. 操作员:工作记录(1:1)
关系描述:一个操作员对应一条自己的工作记录
5. 管理员:基本数据(1:1)
关系描述:管理员负责设定系统的基本数据
6. 管理员:账单(1:N)
关系描述:管理员每天结账并且查询任意时间段的账单情况
3.2逻辑结构设计
说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,形成本数据库的数据库管理员视图。
机房收费系统共建立了10个表,具体如下:
1)基本数据设定(BasicData_Info)
描述 字段名 数据类型 长度
半小时费用 HalfCharge Char 10
递增时间 IncreaseTime Char 10
最少上机时间 LeastTime Char 10
上机准备时间 ReadyTime Char 10
卡内最少余额 LeastCash Char 10
日期 Date Char 10
时间 Time Char 10
2)退卡信息(CancelCard_Info)
描述 字段名 数据类型 长度
学号 StudentNo Char 10
卡号 CardNo Char 10
退卡金额 CancelCash numeric (18,1)
日期 Date Char 10
时间 Time Char 10
用户名 UserID Char 10
状态 Status Char 10
3)日结账单(CheckDay_Info)
描述 字段名 数据类型 长度
余额 RemainCash numeric (18,0)
充值金额 RechargeCash numeric (18,0)
消费金额 ConsumeCash numeric (18,0)
退卡金额 CancelCash numeric (18,0)
所有金额 AllCash numeric (18,0)
日期 Date Char 10
时间 Time Char 10
4)周结账单(CheckWeek_Info)
描述 字段名 数据类型 长度
余额 RemainCash numeric (18,0)
充值金额 RechargeCash numeric (18,0)
消费金额 ConsumeCash numeric (18,0)
退卡金额 CancelCash numeric (18,0)
所有金额 AllCash numeric (18,0)
日期 Date Char 10
时间 Time Char 10
5)上机信息(Online_Info)
描述 字段名 数据类型 长度
卡号 CardNo Char 10
卡的类型 CardType Char 10
学号 StudentNo Char 10
学生姓名 StudentName Char 10
系别 Department Char 10
性别 Sex Char 10
上机日期 OnDate Char 10
上机时间 OnTime Char 10
电脑 Computer Char 10
6)充值记录(Recharge_Info)
描述 字段名 数据类型 长度
学号 StudentNo Char 10
卡号 CardNo Char 10
充值金额 AddMoney Numeric 10
日期 Date Char (19,4)
时间 Time Char 10
用户名 UserID Char 10
状态 Status Char 10
7)学生信息(Student_Info)
描述 字段名 数据类型 长度
学号 StudentNo Char 10
卡号 CardNo Char 10
学生姓名 StudentName Char 10
系别 Department Char 10
性别 Sex Char 10
年级 Grade Char 10
班级 Class Char 10
金额 Cash Numeric (10,3)
备注 Explain Varchar 50
用户名 UserID Char 10
状态 Status Char 10
是否结账 IsCheck Char 10
日期 Date Char 10
时间 Time Char 10
8)用户信息(User_Info)
描述 字段名 数据类型 长度
账号 UserID Char 10
密码 PWD Char 10
级别 Level Char 8
用户名 UserName Char 10
9)值班信息(WorkLog_Info)
描述 字段名 数据类型 长度
用户名 UserID Char 10
级别 Level Char 10
登录日期 LoginDate Char 10
登录时间 LogoutTime Char 10
注销日期 LogoutDate Char 10
注销时间 LogoutTime Char 10
电脑名 Computer Char 10
状态 Status Char 10
3.3物理结构设计
建立系统程序员视图,包括:
a.数据在内存中的安排,包括对索引区、缓冲区的设计;
b.所使用的外存设备及外存空间的组织,包括索引区、数据块的组织与划分;
c.访问数据的方式方法。
![](/qrcode.jpg)
4运用设计
4.1数据字典设计
对数据库设计中涉及到的各种项目,如数据项、记录、系、文卷、模式、子模式等一般要建立起数据字典,以说明它们的标识符、同义名及有关信息。在本节中要说明对此数据字典设计的基本考虑。
1)基本数据设定(BasicData_Info)
数据项编号 数据项名 存储结构 别名
001 半小时费用 Char(10) HalfCharge
002 递增时间 Char(10) IncreaseTime
003 最少上机时间 Char(10) LeastTime
004 上机准备时间 Char(10) ReadyTime
005 卡内最少余额 Char(10) LeastCash
006 设定日期 Char(10) Date
007 设定时间 Char(10) Time
2)退卡信息(CancelCard_Info)
数据项编号 数据项名 存储结构 别名
010 退卡金额 Numeric(18,1) CancelCash
3)日/周结账单(CheckDay_Info)
数据项编号 数据项名 存储结构 别名
012 所有金额 numeric(18,0) AllCash
4)上机信息(Online_Info)
数据项编号 数据项名 存储结构 别名
013 上机日期 Char(10) OnDate
014 上机时间 Char(10) OnTime
015 电脑名 Char(10) Computer
5)充值记录(Recharge_Info)
数据项编号 数据项名 存储结构 别名
016 充值金额 Numeric(10) AddMoney
6)学生信息(Student_Info)
数据项编号 数据项名 存储结构 别名
017 学号 Char(10) StudentNo
018 卡号 Char(10) CardNo
019 学生姓名 Char(10) StudentName
020 系别 Char(10) Department
021 性别 Char(10) Sex
022 年级 Char(10) Grade
023 班级 Char(10) Class
024 金额 Numeric(10,3) Cash
025 备注 Varchar(50) Explain
026 用户名 Char(10) UserID
027 状态 Char(10) Status
028 是否结账 Char(10) IsCheck
029 注册日期 Char(10) Date
030 注册时间 Char(10) Time
7)用户信息(User_Info)
数据项编号 数据项名 存储结构 别名
031 账号 Char(10) UserID
032 密码 Char(10) PWD
033 级别 Char(10) Level
034 用户名 Char(10) UserName
8)值班信息(WorkLog_Info)
数据项编号 数据项名 存储结构 别名
035 登录日期 Char(10) LoginDate
036 登录时间 Char(10) LogoutTime
037 注销日期 Char(10) LogoutDate
038 注销时间 Char(10) LogoutTime
4.2安全保密设计
说明在数据库的设计中,将如何通过区分不同的访问者、不同的访问类型和不同的数据对象,进行分别对待而获得的数据库安全保密的设计考虑。
系统主要有三个管理用户级别,分别拥有不同的管理权限。具体如下:
一般用户 操作员 管理员
学生信息管理 √ √ √
用户信息管理 √
收支账目管理 √ √
系统信息管理 √