数据库长途汽车管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

线路模块:用来管理汽车线路号、出发地、目的地、出发时间、所需时间。 汽车模块:用来管理汽车汽车编号、汽车的种类及相应的票价、最大载客量、剩余座位数。

车票模块:用来管理汽车车票编号、售票情况、查询、打印。 乘客模式:用来管理汽车乘客出发地 、出发地、目的地。

图2 设计思路 3、数据库设计

(1)概念设计

经分析,本系统各实体及其属性的E-R 图如下:

图3 车票信息表

线路

汽车

车票 输入 线路信息

各种查询

输入 输入

管理员

各种报表

票价信汽车信息 输入

线路信输入

汽车信

图4 线路信息表

图 5 汽车基本信息表

图 6 乘客信息表

各实体间关系的e-r 图如下:

汽车 汽车种类

汽车编号 最大载客量

乘客

出发时间

目的地 出发地

图8 创建数据库

(2)表

① CREATE TABLE 汽车基本信息表

( 汽车编号 CHAR(10) PRIMARY KEY,汽车种类 CHAR(10),

最大载客量 INT,

线路号 CHAR(10))

图9 创建汽车基本信息表

② CREATE TABLE 车票信息表

( 车票编号 CHAR(10) PRIMARY KEY,售票情况 CHAR(10),

票价 INT,

线路号 CHAR(10))

图10 创建车票信息表

③ CREATE TABLE线路信息表

(线路号 CHAR(10) PRIMARY KEY,出发地 CHAR(10),

目的地 CHAR(10),

出发时间 CHAR(10),

所需时间 INT)

图11 创建线路信息表

④ CREATE TABLE 乘客信息表

( 汽车编号 CHAR(10) PRIMARY KEY,线路号 CHAR(10),

出发地 CHAR(10),

目的地 CHAR(10),

出发时间 CHAR(10))

图12 创建乘客信息表(3)索引

①CREATE UNIQUE INDEX im_in

ON 汽车基本信息表(汽车编号)

图13 为汽车基本信息表创建索引

② CREATE UNIQUE INDEX ik_il

ON 线路信息表(线路号)

图14 为线路信息表创建索引

③ CREATE UNIQUE INDEX id_ix

ON 车票信息表(车票编号)

图15 为车票信息表创建索引

④ CREATE UNIQUE INDEX ih_ig

ON 乘客信息表(汽车编号)

图16 为乘客信息表创建索引

(4)视图

①CREATE VIEW view_1

AS

select 汽车编号,汽车种类,最大载客量,线路号

from 汽车基本信息表

图17 为汽车基本信息表创建视图

② CREATE VIEW view_2

AS

select 线路号,出发地,目的地,出发时间,所需时间

from 线路信息表

图18 为线路信息表创建视图

③CREATE VIEW view_3

AS

select 车票编号,售票情况,票价,线路号

from 车票信息表

图19 为车票信息表创建视图

④ CREATE VIEW view_4

AS

select 出发时间,出发地,目的地,汽车编号,线路号 from 乘客信息表

图20 为乘客信息表创建视图6、录入数据

INSERT

INTO 车票信息表

VALUES('20110001','拥挤','85','101')

INSERT

INTO 车票信息表

VALUES ('20110002','良好','90','102')

INSERT

INTO 车票信息表

VALUES ('20110003','稀疏','110','103')

INSERT

INTO 车票信息表

VALUES ('20110004','拥挤','109','104')

INSERT

INTO 车票信息表

VALUES ('07:00','南昌市','景德镇','6','106')

INSERT

INTO 乘客信息表

VALUES ('10:23','景德镇','鄱阳县','2','102')

INSERT

INTO 乘客信息表

VALUES('14:30','抚州市','南昌市','5','105') INSERT

INTO 乘客信息表

VALUES('15:28','鄱阳县','南昌市','3','103') 7、设计存储过程和触发器

(1)创建存储过程

create proc proc_zg

as

select 车票编号,票价

from 车票信息表

where 线路号='103'

图21 创建存储过程

(2)创建触发器

① create trigger insert_qi

on 车票信息表

after insert

as

select *

from 车票信息表

insert into 车票信息表(车票编号,票价)

Values(‘20110001’,‘80’)

图22 车票信息表创建触发器

② create trigger insert_che

on 汽车基本信息表

after insert

as

select *

from 汽车基本信息表

insert into 汽车基本信息表(汽车编号,线路号) Values(‘1’,‘101’)

相关文档
最新文档