实验四-网上订票系统数据库系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
丽水学院计算机实验报告
课程:网络数据库班级:计071本学号: 45 姓名:黄盈盈仪器编号42 实验日期2010-6-18 实验:四简单的选课系统的设计与实现
实验目的:
1.进一步熟悉oracle的各种操作;
2.能够在实际的实例中灵活运用学到的有关知识;
3.通过本次试验,了解到软件系统创建数据库的过程,以便日后自己在做软件系统中,能够进行各种数据库操作。
实验环境:
Windows xp+ PowderDesigner 12+ Oracle 11g + Microsoft word 2000
实验内容:(可用附页)
见附页
实验结果:(可用附页)
见附页
网上订票系统数据库系统设计
数据库设计是对于一个给定的应用环境,构建一个最优的数据库模式,并据此建立既能有效、完整、安全存储数据的数据库,又能满足多个用户的信息要求和处理要求的应用系统。
本数据库设计就是为了能够方便旅客出行前对机票进行查询,以此来安排行程而进行设计。(结合数据库设计和你要完成的系统进行陈述)。
数据库设计的过程包含需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用的设计。下面就按照数据库设计的过程进行逐一陈述。
一、需求分析
1、系统设计的意义
系统能实现的操作和功能如下:
(1)查询航线:根据旅客提出的终点站名输出如下信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;
(2)承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求;
(3)承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续。
2、需求收集
(1)卖票记录
(2)退票信息
(3)余票信息
(4)机票总表
3、业务逻辑的分析
管理员、售票员、旅客、机票
管理员—>登陆—>录入机票信息
售票员—>登陆—>管理员验证有效性—>售票—>编辑机票总表—>统计收入
旅客—>陆—>查询机票信息—>订票/退票
4、具体功能分析
用户登陆
订
票/
退
票
5、流程分析
二、概念结构设计
1、局部e-r图
2、整体e-r图
三、逻辑结构设计
(逻辑结构设计的概念和意义)
逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为数据模型符合的逻辑结构
1、Manager表
2、Salesmen表
3、Traveller表
4、Ticket表
四、物理结构设计
1、创建表空间
Create tablespace huangyingying45 datafile ’D:\Oracle\hyy.dbf’ size 100m;
2、在oracle中创建用户并使用上面的表空间
Create user hyy45 identified by hyy45 default tablespace huangyingying45;
3、创建表
Table Manager:
Create table Manager(
MId varchar2(20) not null,
MKey varchar2(20),
constraint PK_MANAGER primary key(MId));
Table Salesmen:
create table Salesmen(
SId varchar2(10) not null,
SName varchar2(20),
SAge number,
SSex varchar2(8),
SPost varchar2(40),
SPhone number,
SAdd varchar2(40),
constraint PK_SALESMEN primary key(SId));
Table Traveller:
Create table Traveller(
TName varchar2(20) not null,
TPhone number,
TNum number);
Table Ticket:
Create table Ticket(
TFlight varchar2(20),
TPlane varchar2(20),
TDate date,
TId number not null,
TPrice number,
TSur number,
Constraint PK_TICKET primary key(TId));
4、创建触发器---功能是当旅客订购一张票后,对应的余票额
减一。
Create or replace trigger TSur_Trigger
Before insert on Traveller
For each row
Begin
Update Ticket
Set TSur=TSur-1
Where TSur in
(select TNum from Traveller);
End;
5、创建视图(实现的是各种类型的报表)
6、演示数据的输入
Insert into Manager values(‘hyy’,’23213’);
Insert into Salesmen values(1,’hxc’,21,’f’,’master’,111,’aaa’);