《火车票订购系统数据库设计说明书.docx》由会员分享,可在线阅读,更多相关《火车票订购系统数据库设计说明书.docx(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上火车票订购系统数据库设计说明书院 系: 厦门理工软件学院 专业班级: 学 号: 学生姓名: 2012-5-22 2012-5-31【目录】1.0引言 1.1编写目的 .31.2背景 .31.2.1数据库的名称、数据库的软件系统的名称 .31.2.2本项目的任务提出者、开发者、用户 .31.3定义 . 31.4参考资料 . . 42.0项目详述 2.1项目背景 2.11开发背景 .52.12当前约束 .52.2 系统结构 系统的总体设计结构 .62.3 项目需求详述 2.31 系统功能要求设计 .6 2.32 数据需求 .83.0结构设计 3.1概念结构设计 3.11
2、流程图 . 9 3.12 联系图 (E-R图) . 103.2逻辑结构设计 . 114安全、保密、故障处理设计 .14 1.引言1.1编写目的 该项目的开发源于火车站的火车票订购仅仅靠手工操作,火车票订购一直困扰着我们、更是社会服务的一个难点。此概要设计说明书是为了说明整个系统的体系架构为系统的详细设计人员进行详细设计时的输入参考文档。 该项目的读者主要有:程序员、数据库设计人员、系统分析员、软件测试人员1.2背景1.2.1数据库的名称、数据库的软件系统的名称数据库的名称: oracle 10g数据库的软件系统的名称: 火车票订购系统1.2.2本项目的任务提出者、开发者、用户任务提出者: 开发
3、者: 用户:广大乘客 1.2.3 系统运行环境 Windows XP,Windows 98,Windows NT,Windows 2000, Windows 7 。1.3定义 B/S结构模式:Browser/Server,(/服务器)。 C/S结构模式:client/server (客户/服务器)。SQL server:系统服务器使用的数据库管理系统(DBMS)。 主键:Primary Key主关键字(简写PK)。 外键:Foreign key (简写FK)。 事前触发器:是在insert,update,delete执行之前执行的触发器 E-R图:也称实体-联系图(Entity Relatio
4、nship Diagram) 1.4参考资料 (1)、软件测试技术第二版 -佟伟光 主编 (2)、基于.NET的需求分析和解决方案设计-微软公司 著 (3)、oracle 10g第二版-路川、胡欣杰 阎文丽 著 (4)、软件需求说明书(GB856T88) 国家标准2.0项目详述2.1项目背景n 项目的提出原因:由于火车站售票员人力紧张,采取乘客网上自主订票。n 项目优势分析:(1)该项目有利于节约人力资源。(2)节省火车站排队订票引发的一系列管理问题。(3)节省了乘客排队订票的时间。(4)避免了春节等长假有钱买不到票的情况。n 项目运作的可行性: 项目的运作将让广大乘客受益!n 项目的独特与创
5、新分析 : (1)改变了以往人工售票的方式。 (2)改纸质火车票成身份证电子检票。(3)提高了火车站工作效率。(4)方便了乘客查询订票。2.2 系统结构2.21总体设计结构系统采用流行的B/S结构模式。系统的分析设计采用面向对象的技术2.3 项目需求详述 2.31 系统功能要求设计此系统实现如下系统功能:(1)功能:使得乘客网上订票简单易上手、更有条理、订票流程一目了然。(2)服务:通过用户名和密码登录系统,查询车次、查询订单、改签、退票、修改账户密码、票价查询、网站在线服务、设置网上购票常见问题解答、设置客户投诉邮箱等等(3)查询:对车次的查询:对车次的查询,可以按照发车车次进行查询。车次信
6、息还包括:车号、发车日期、出发地、目的地、开出时刻、到达时间、票价、剩余票数、座位类型。车次信息只允许查询不允许修改。已订车票的查询:对所定车票的查询,可以按照订单号查询。还包含:身份证号、车号、发车日期、订票日期、订购票数、总价。车票信息可以允许修改。(4)界面:设计界面清晰,无复杂操作,功能合理,并且进一步考虑系统在安全性,完整性,备份和恢复等方面的功能要求。2.32 模块设计火车票订购系统电话号码性别身份证号登录密码用户名票价信息座位类型车号车次信息出发时间剩余座位发车地点目的地开车时间到达时间用户信息订单信息 身份证号总价车号订单号订单数量开车时间订购日期系统登陆模块数据加密与备份模块
7、数据同步模块Oracle服务器 火车票订购系统包括:车次信息、用户信息、订单信息。 车次信息包括:车号、发车日期、出发地、目的地、开出时刻、到达时间、票价、剩余票数、座位类型。车次信息只允许查询不允许修改。 用户信息包括:用户名、登录密码、身份证号码、性别、电话号码。(登录密码可以由用户任意修改) 订单信息包括: 订单号、订购日期、开车时间、订单数量、车号、总价、身份证号 (订单可以退票,退票金额退回所用的银行卡内) 系统登陆模块:需要用户在客户端输入用户名、密码、验证码,三者都正确输入才可以登录到订购火车票主界面,否者报错。 数据加密与备份模块:数据信息做加密处理、普通用户不可修改系统数据、
8、但是可以修改用户个人信息。 系统管理员可操作系统部分系统信息,对重要信息每周日凌晨0:00分做完整备份,每小时的30分钟整 做差异备份。 数据同步模块:数据与远程客户端信息同步,用户更改完的数据立即发送到数据库,并同步。 2.33 数据需求输入信息信息处理信息输出输入车次搜索系统数据库符合用户需求的车次以及相关信息用户输入个人信息以及需订购的车票信息更新系统中的订票信息。将新的信息存入系统数据库订票用户输入身份证号或交易的订单号检索系统数据库符合用户需求的订票信息用户输入自己的身份证号码检索系统数据库以得到订票记录,删除用户请求的订票记录,已更新系统数据库退票3.0结构设计3.1概念结构设计针
9、对火车站网上订票系统,通过对网上订票工作的过程、内容以及数据流程分析,设计如下所示的数据项和数据结构:车次信息包括:车号、出发地、目的地、发车日期、开出时刻、剩余座位数、票价、座位类型。订票记录包括:订单号、身份证号、车号、订购日期、订购票数、总价。用户信息包括:用户名、身份证号、性别、电话3.11流程图 3.12联系图( E-R图)l 车次信息(E-R图):l 用户信息(E-R图):l 订单信息(E-R图):l 订票方式(E-R图):3.2逻辑结构设计 3.21表设计 (1)用户表(user)字段名中文名键别是否空数据类型长度AdminName用户名PKNOVarchar8AdminPass
10、用户密码NOVarchar16AdmiRoleid用户权限Int8创建user表:create table user (AdminName varchar2 (8)not null primary key, AdminPass varchar2 (16) not null, AdmiRoleid int(8) );(2)用户信息表(users)字段名中文名键别是否空数据类型长度AdminName用户名PKNOvarchar28Sex性别Novarchar22Age年龄NOInt50Nitive籍贯varchar250Address地址varchar250Shenfenzheng身份证号NoIn
11、t20创建users 表:create table users(AdminName Varchar(8) not null primary key, Sex varchar2 (2) not null, Age int(50) not null, Nitive varchar2 (50), Address varchar2 (50) Shenfenzheng Int(20)not null ); (3)车次信息表(CheCi)字段名中文名键别是否空数据类型长度DpartTime开车时间NoDate20Time到达时间NoDate20Dstination目的地NoVarchar50FacheDi
12、dian发车地点NoVarchar50CheHao车号PKNoInt20Piaojia票价NoInt20ShengyuPiaoshu剩余票价Int50ZuoweiLeixing座位类型NoVarchar10创建CheCi表 create table CheCi(DpartTime Date (20)not null, Time Date (20)not null, Dstination Varchar(50) not null, FacheDidian Varchar(50) not null, CheHao Int(20)not null primary key, Piaojia Int(2
13、0)not null, ShengyuPiaoshu Int(50) ZuoweiLeixing Varchar(10) not Null );创建事前触发器: Create or replace trigger tr_CheCi Before insert or update or delete on CheCideclare error_1 exception; begin if1 then raise_application_error(-20001,不能插入数据、更改数据、删除数据!); end if;exception when error_1 then dbms_output.pu
14、t_line(error); end; / (4)订单信息(order)字段名中文名键别是否空数据类型长度CheHao车号PKNoInt20FacheTime发车时间NoDate20DinggouTime订单时间NoDate30Shenfenzheng身份证号FkNoInt20DingdanshuL订单数量NoInt50DingdanHao订单号NoInt100Totalprice总价NoInt100创建order表: create table order(CheHao Int(20)not null primary key, FacheTime Date(20)not null, Dingg
15、ouTime Date(30)not null, Shenfenzheng Int(20)not null foreign key, DingdanshuL Int(50)not null, DingdanHao Int(100)not null, Totalprice Int(100)not null, );创建事前触发器: Create or replace trigger tr_order Before insert or update or delete on orderdeclare error_1 exception; begin if1 then raise_applicatio
16、n_error(-20001,不能插入数据、更改数据、删除数据!); end if;exception when error_1 then dbms_output.put_line(输入错误!); end; /4.0安全、保密、故障处理设计安全、保密:身份认证功能(Authentication):识别访问个体的身份 。数据访问的机密性(Confidentialty):保证敏感数据访问的机密性。 数据完整性(Integrity):保证数据不被篡改。 授权能力(Authorization):保证被授权用户对数据的查询和修改能力。 访问控制(Access Control):确定对指定数据的访问能力。 审计能力(Auditing):提供监测用户行为的能力。 私有性(Privacy):提供对敏感数据访问的私密性。 高可用性(Availability):保证数据和系统提供不间断服务的能力。 代理管理能力(Delegated Administration):提供对用户帐号的集中管理功能。故障处理:在用户输入一些不合理的数据的时候,能够进行一些合理的提示 信息,不能因为输入错误而导致系统的错误,或者程序停止运行;程序运行时,对服务器和网络通信故障能够识别并提示,当故障 排除后,程序恢复正常运行;数据库要求有灾难备份机制,以防止数据的全部丢失。专心-专注-专业