大型数据库课程设计 火车站票务管理系统.docx
《大型数据库课程设计 火车站票务管理系统.docx》由会员分享,可在线阅读,更多相关《大型数据库课程设计 火车站票务管理系统.docx(28页珍藏版)》请在三一办公上搜索。
1、大型数据库课程设计设计报告题目:火车站票务管理系统后台数据库学 号:gggg学生姓名:ddd指导教师:fgg提交时间:2013-11-23目录第1章 需求分析11.1需求调查错误!未定义书签。1.2系统功能分析11.3面对用户需求分析2第2章 面向对象分析和设计错误!未定义书签。类和对象设计如下:3第3章 逻辑结构设计53.1类和对象向关系模式转换8第4章 数据库物理结构设计84.1 存取方法设计84.2存储结构设计84.3 物理设计8第5章 数据库完整性设计85.1 主键及唯一性索引115.2 参照完整性设计115.3 Check约束125.4 Default约束125.5 触发器设计12第
2、6章数据库视图设计12第7章数据库存储过程设计14第8章权限设计16总结19参考文献:21教务管理系统后台数据库第1章需求分析通过对火车站客运量、旅客和业务员的调查,该火车站票务管理系统有如 下需求:1)系统管理:实现系统管理人员对系统的管理,包括添加删除用户,更改密 码,数据备份,数据还原,注销等功能。2)票务管理:实现对火车运行站点及时间的管理、对业务员的管理、对余票 的更新及退票的管理。3)基本信息:实现显示火车及业务员的基本信息。4)售票:在有剩余座位的情况下自动更新剩余的座位数,控制不超员。5)查询:包括实现车次查询,业务员查询。可以查询火车的车种、编号、车厢数等;查询售票员工作的车
3、站名,及其年龄、性别等;6)服务器配置:对它进行配置可以使得在其他电脑上也照常使用。这样不必 每次都到数据库中去更改。7)帮助系统:帮助系统为用户指明方向。1.2系统功能分析火午站票务管理系统1、车次管理:用于对火车基本信息的录入、查询、修改、维护、删除等常 用功能。2、车次及价格管理(含到各站的价格):可以按照车次或始发站、终点站 两种方式进行查询,只需要输入关键信息即可查到所需的车次的有关信息, 包括车的类型、所剩票的类型、数量、票价等。3、实现业务员管理:用于对业务员基本信息的录入、查询、修改、维护、 删除等常用功能,并提供工作地点变动、奖惩登记等功能。4、实现车票销售管理:车票销售时不
4、能超员,并自动修改剩余的座位数(用 触发器实现);5、创建存储过程统计指定车次指定发车时间的车票销售情况;6、创建存储过程统计指定日期各业务员车票的销售收入;7、实现退票管理:由于一些原因,可能造成客户要求退票,系统根据具体 的情况判定是否可以退票,进行退票。退票时自动修改相应车次的剩余座位数。1.3面对用户需求分析在火车站票务管理系统中,最主要的功能就是进行一系列的查询和各类数 据的管理。因此,可以将火车站票务管理系统分为管理系统(有数据变化)和 查询系统两个子系统。而在所设计的火车站票务管理系统中,主要有三类用户, 即旅客用户、业务员用户、系统管理员。各类用户在该系统中的需求不同, 权限也
5、不同。因此,为了更明确,更系统的了解用户需求,我们还可以将管理 系统再细分为旅客管理系统,业务员管理系统,系统管理员管理系统。同样, 将查询系统也按用户职能进行细分。这样细分后,看似把系统需求繁杂化了。 其实不然,细分后使各用户需求更加明确了,并且能更好的把握系统需求。下面从细分后的各个子系统分析子系统的需求:1) 车次管理系统,旅客可以通过该系统查询相关车次的基本信息,火车途经 站点、出发时间、车的种类等。2) 车次及价格管理系统,旅客可以按照相关车次及车站查询相对票价及时间。3) 业务员管理系统,该系统中,主要显示业务员的各项基本信息以及对业务 员信息的管理。4) 车票销售管理系统,该系统
6、主要是可以自动更新各个车次的剩余票数。5) 退票管理系统,对由于各种原因需要退票的旅客提供退票服务,系统根据 具体的情况判定是否可以退票,进行退票。退票时自动修改相应车次的剩余座位 数。第2章面向对象分析和设计类和对象设计如下:管理员信息乘客信息管理员编号;char(&)身份证号;chailB)姓名:char(S )姓名:diar (包级别:char(lO)车票编号:添加0添加0修改0修改0删除0删除0查询。查询0车次信息业务员车次号:击叮员工编号:char座位数:血姓名! char祐)发牛日寸间:char(3)工作站点:char (20)里程;Loa.1性别;bit车种:char(6)年龄,
7、mt添加0查询()修改0添加0删除0修改。查询0删除。第3章 逻辑结构设计局部ER图1、车次管理2、售票员管理业务员3、车票销售系统4、车票销售超员管理总体ER图3.1类和对象向关系模式转换车次信息(车次号、座位数、发时、车种)业务员信息(员工编号、姓名、性别、年龄)员工奖励表(员工编号、工作站点、奖励等级)车站信息(车次号、始发站、途径车站、途径车站、终点站)车票信息(车票编号、车次号、座位号、价格、发车时间、座位种类)退票信息(车票编号、车次号、退票日期)售票信息(员工编号、车次号、车票编号、售票日期)余票信息(车次号、发车时间、剩余票数)第4章 数据库物理结构设计4.1存取方法设计数据库
8、系统是多用户共享的系统,对同一个关系要建立多条存储路径才能满足多用户的 多种应用要求。对于火车站票务管理系统来说,为了提高某些属性(如:车票编号、车次号、 座位号、座位类型等)的查询速度,可以选择聚簇存取的方法,即把这些属性上具有相同值 的元组集中放在连续的物理块上。这样在查询时就会大大提高查询速度。因此,该系统中选 择聚簇存取方法。4.2存储结构设计火车站票务管理系统是一个大型复杂的计算机网络信息系统,采用基于浏览器/服务器 (B/S),客户端/服务器(C/S)混合的应用体系结构来建设教务管理系统。数据库管理系统 采用Microsoft公司推出的SQL Server 2000或以上版本,并用
9、SQL进行数据库的 建立和数据库中数据的维护和查询。4.3物理设计实现该设计的环境为Windows XP Professional + MS SQL Server 2005或以上版本。一:建立火车站车票管理数据库create database火车站车票管理数据库-1、创建管理员表:create table 管理员(管理员编号char(6) not null primary key,姓名 char(8),级别 char(10)-2、创建乘客表:create table 乘客表(身份证号char(18) not null primary key,姓名 char(8),车票编号char(5),)-3
10、、建立业务员表:create table 业务员(员工编号char(6) not null primary key,姓名 char(8),性别bit, 年龄i nt,)-4、创建员工奖励表create table员工奖励表(员工编号char(6) not null references业务员(员工编号),工作站点char(20),奖励等级char(10),primary key (员 工编号)-5、建立车次表:create table 车次表(车次号char(5) not null primary key,座位数int,发车时间char(5) null,车种 char (4)-6、建立车站表:
11、Create table 车站表(车次号char(5) not null references车次表(车次号),始发站char(20) not null,途径车站char(20) not null,途径车站char(20) not null,途径车站 char(20) null,途径车站 char(20) null,途径车站 char(20) null,终点站char(20) not null,primary key (车次号)-7、建立车票表:CREATETABLE 车票表(车票编号char(5) not null primary key ,车次号char(5) not null refer
12、ences车次表(车次号),发车时间 datetime not null,座位编号char(5) not null,价格float not null,座位种类char(4)-8、建立售票表:create table 售票表(员工编号char(6) not null references业务员(员工编号),车票编号char(5) not null references车票表(车票编号), 车次号char(5) not null references车次表(车次号),售票日期datetime,primary key (员工编号,车票编号)-9、建立退票表:create table 退票表(车票编号
13、char(5) not null primary key,车次号char(5) not null references车次表(车次号),退票时间 datetime null,foreign key (车票编号)references车票表(车票编号)-10、建立余票表:create table 余票表(车次号char(5) not null primary key,剩余票数int not null,发车时间datetime,foreign key (车次号)references 车次表(车次号)第5章数据库完整性设计5.1主键及唯一性索引表名主键建立唯一性索引车次表(车次号)create uni
14、que index 车次表 on车次表(车次号asc)业务员(员工编号)create unique index 业务员 on业务员(员工编号asc)车站表(车站号)create unique index 车站表 on 车站表(车站号 asc)/te ib 售票表(车票号)create unique index 售票表 on售票表(车票号asc)车票表(车票编号,车次号)create unique index 车票表on车票表(车票编号asc,车次号asc)退票表(车票号)create unique index 退票表 on退票表(车票号asc)余票表(车次号)create unique ind
15、ex 余票表 on余票表(车次号asc)5.2参照完整性设计5.3 Check 约束1、业务员表中将性别进行check约束:alter table 业务员add constraint sex check(性别 in(1,0)2、车票表中将座位编号进行check约束:alter table 车票表add constraint zum check (座位编号=12000 and 座位编号 =15000)3、车次表中车种进行check约束:alter table 车次表add constraint ccz check (车种 in(普快,快车,特快,动车,高铁)5.4 Default 约束1、售票表
16、中售票日期默认值设为:2013-11-19 00:00。default(2013-11-19 00:00)2、业务员表中将员工性别族默认值设为:女。default(女)3、员工奖励表中将奖励等级默认值设为:null。default(null)5.5触发器设计-1、车票销售时不能超员,并自动修改剩余的座位数create trigger tri_ticket on 售票表after insertasbegindeclare p_num char5),seat_sum int t_num char(5select p_num=车票编号 t_num =车次号from insertedselect se
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大型数据库课程设计 火车站票务管理系统 大型 数据库 课程设计 火车 站票 管理 系统
链接地址:https://www.31ppt.com/p-5090729.html