大型数据库课程设计--火车站票务管理系统.doc
文本预览下载声明
大型数据库课程设计
设计报告
题 目:火车站票务管理系统后台数据库
目录
第1章 需求分析 2
1.1 需求调查 2
1.2系统功能分析 2
1.3面对用户需求分析 3
第2章 面向对象分析和设计 4
类和对象设计如下: 4
第3章 逻辑结构设计 6
3.1 类和对象向关系模式转换 9
第4章 数据库物理结构设计 9
4.1 存取方法设计 9
4.2 存储结构设计 9
4.3 物理设计 9
第5章 数据库完整性设计 9
5.1 主键及唯一性索引 12
5.2 参照完整性设计 12
5.3 Check约束 13
5.4 Default约束 13
5.5 触发器设计 13
第6章 数据库视图设计 13
第7章 数据库存储过程设计 15
第8章 权限设计 17
总结 19
参考文献: 20
第1章 需求分析
通过对火车站客运量、旅客和业务员的调查,该火车站票务管理系统有如下需求:
系统管理:实现系统管理人员对系统的管理,包括添加删除用户,更改密码, 数据备份,数据还原,注销等功能。
票务管理:实现对火车运行站点及时间的管理、对业务员的管理、对余票的更新及退票的管理。
基本信息:实现显示火车及业务员的基本信息。
售票:在有剩余座位的情况下自动更新剩余的座位数,控制不超员。
查询:包括实现车次查询,业务员查询。可以查询火车的车种、编号、车厢数等;查询售票员工作的车站名,及其年龄、性别等;
服务器配置:对它进行配置可以使得在其他电脑上也照常使用。这样不必每次都到数据库中去更改。
帮助系统:帮助系统为用户指明方向。
1.2系统功能分析
1、车次管理:用于对火车基本信息的录入、查询、修改、维护、删除等常用功能。
2、车次及价格管理(含到各站的价格):可以按照车次或始发站、终点站两种方式进行查询,只需要输入关键信息即可查到所需的车次的有关信息,包括车的类型、所剩票的类型、数量、票价等。
3、实现业务员管理:用于对业务员基本信息的录入、查询、修改、维护、删除等常用功能,并提供工作地点变动、奖惩登记等功能。
4、实现车票销售管理:车票销售时不能超员,并自动修改剩余的座位数(用触发器实现);
5、创建存储过程统计指定车次指定发车时间的车票销售情况;
6、创建存储过程统计指定日期各业务员车票的销售收入;
7、实现退票管理:由于一些原因,可能造成客户要求退票,系统根据具体 的情况判定是否可以退票,进行退票。退票时自动修改相应车次的剩余座位数。
1.3面对用户需求分析
在火车站票务管理系统中,最主要的功能就是进行一系列的查询和各类数据的管理。因此,可以将火车站票务管理系统分为管理系统(有数据变化)和查询系统两个子系统。而在所设计的火车站票务管理系统中,主要有三类用户,即旅客用户、业务员用户、、系统管理员。各类用户在该系统中的需求不同,权限也不同。因此,为了更明确,更系统的了解用户需求,我们还可以将管理系统再细分为旅客管理系统,业务员管理系统,系统管理员管理系统。同样,将查询系统也按用户职能进行细分。这样细分后,看似把系统需求繁杂化了。其实不然,细分后使各用户需求更加明确了,并且能更好的把握系统需求。
下面从细分后的各个子系统分析子系统的需求:
1) 车次管理系统,旅客可以通过该系统查询相关车次的基本信息,火车途经站点、出发时间、车的种类等。
2) 车次及价格管理系统,旅客可以按照相关车次及车站查询相对票价及时间。
3)业务员管理系统,该系统中,主要显示业务员的各项基本信息以及对业务员信息的管理。
4)车票销售管理系统,该系统主要是可以自动更新各个车次的剩余票数。
5) 退票管理系统,对由于各种原因需要退票的旅客提供退票服务,系统根据具体的情况判定是否可以退票,进行退票。退票时自动修改相应车次的剩余座位数。
面向对象分析和设计
类和对象设计如下:
第3章 逻辑结构设计
局部ER图
车次管理
1 n
2、售票员管理业务员
n 1
车票销售系统
n m
n m
4、车票销售超员管理
1 n
总体ER图
m
1
显示全部