地铁数据库系统设计(1)

地铁数据库系统设计(1)


2024年2月6日发(作者:)

目录

数据库设计 .............................................................................................................................................. 2

1数据库系统设计 ................................................................................................................................... 2

1.1需求分析 ................................................................................................................................... 2

1.1.1 功能需求 ....................................................................................................................... 2

1.1.2 性能需求 ....................................................................................................................... 3

1.2 实体关系图说明 ...................................................................................................................... 3

参考文献 ................................................................................................................................................ 10

附录 ........................................................................................................................................................ 11

附录1 ER图 ....................................................................................................................................... 11

附录2 ..................................................................................................................................................... 11

数据库设计1数据库系统设计

1.1需求分析

1.1.1 功能需求

系统要实现的主要功能:

②用户管理 :由于要进行网上地铁订购车郑州地铁票,用户需注册,填写有关信息,登录以及注册系统等。

③路线选择 :本系统为网上订郑州地铁票,用户经过查询地铁线路信息、郑州地铁票务信息,找到自己所需的车郑州地铁票通过所关联的账户进行订购。

⑤更新功能: 该系统随时跟据车辆的变化情况进行更新,增加车辆时可以在系统中插入该车的详细信息,同时也能根据需要修改某趟车经过的站点与发车时间,当某趟车停止、开行时可以删除该趟车的信息。同时包括对列车信息、站点信息、订郑州地铁票记录等的更新功能。

①查询 :可以通过起点站与终点站在进行查询, 也可根据具体的地铁线路输入进行查询,同时每次查询都会显示地铁线路号,点击即可显示该趟列车所进过站点的详细信息,其中包括所到达每个站的到达时间与出发时间。

⑥费用计算:用户在订购了车郑州地铁票之后 , 管理人员通过后台管理订郑州地铁票记录 , 然后根据路线的选择及时为其计算出相应的路线的费用。以便用户查看。

1.1.2 性能需求

1. 准确性和及时性

系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入的信息做出响应。由于本系统的查询功能对于整个系统的功能和性能 完成举足轻重。作为系统的很多数据来源,而郑州地铁票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。在系统开发过程中,必须采用 一定的方法保证系统的准确性和及时性。

2. 易用性

本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。

3. 安全性

在线地铁售郑州地铁票系统中涉及到的数据是地铁公司相当重要的信息,系统要保证用户的权限,对路线等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。 同时系统还要保证对数据库进行及时更新,保证数据一致性。

1.2 实体关系图说明

数据库设计主要包括概念设计和逻辑设计两个部分。

概念设计

概念设计阶段主要是将需求缝隙阶段得到的用户需求抽象为信息结构即概念模型的过程,它是整个数据库设计的关键,设计概念结构通常有四类方法:自顶 向下、自底向上、逐步扩张、混合策略。

逻辑设计

概念设计阶段是独立于任何一种数据模型的,而逻辑设计阶段则与现实结合

起来,逻辑设计的任务就是将概念设计阶段设计好的基本 E-R 图转换为与项目所 支持的数据模型相符合的逻辑结构。具体任务包括将 E-R 图转换成关系模型、模 型优化、数据库模式定义、用户模式设计。

图1-1 车郑州地铁票实体以及属性

图1-2 用户实体以及属性

图1-3 郑州地铁票务人员实体以及属性

图1-4 郑州地铁票实体以及属性

E-R 图向关系模型的转换遵循如下规则,一个实体型转换为一个关系模式,实 体的属性就是关系的属性,实体的码就是关系的码。 对于实体间的联系则有不同的情况:一个 1:1 联系可以转换为一个独立关系 模式,也可以与任意一端关系模式合并;一个 1:N 联系可以转换为一个独立关系 模式,也可以与 n 端实对应的关系模式合并;一个 M:N 联系转换为一个独立关系 模式,具有相同码的关系模式可以合并。

根据以上原则,对于该系统的 E-R 图进行转换,从而得到本 E-R 图向关系模 型的转换如下:

郑州地铁票务人员(郑州地铁票务人员编号、郑州地铁票务人员姓名、郑州地铁票务人员工作地点)

用户(用户身份证号、用户名、用户银行卡号、用户电话、用户地址、登录

ID、 登录密码、郑州地铁票务人员编号)

订郑州地铁票单(订郑州地铁票单号、订郑州地铁票日期、订郑州地铁票时间、订郑州地铁票数量、订郑州地铁票手续费、用户身份证 号)

车郑州地铁票(线路、车郑州地铁票价格、车次、座位类型、座位编号、出发站、目的站、发 车时间、到站时间、 订郑州地铁票单号、退郑州地铁票单号)

2 数据库系统实现

2.1 表结构

主要包括:数据库、基本表、视图、索引、触发器以及存储过程。详细

DDL语句以 及相关代码,见附录 。

(1) 建立索引:

create unique index Customer_index onCustomer(Cno);

create unique index Ticket_index on Ticket(Tno);

create unique index Book_index on Book(Bno);

create unique index Dishonour_index on Dishonour(Dno)

(2) 创建的视图如表所示

表视图

创建的存储过程如表所示:

表存储过程

创建的触发器如表所示:

表触发器

2.2 创建SQL

基本表的建立:

1. 创建在线郑州地铁售郑州地铁票系统

create database RTSO

2. 创建郑州地铁票存系统基本信息表:

create table MemorySystem

(Msno char(14) primary key,

Msadd char(20) unique not null

)

3. 创建郑州地铁票务人员基本信息表:

create table TicketStaff

(Tsno char(14) primary key,

Tsname char(10) not null,

Tsadd char(20) not null

)

4. 创建客户基本信息表:

create table Customer

(Cno char(20) primary key,

Cname char(10) not null,

Ccano char(20),

Cphone char(12) not null,

Cadd char(30) not null,

Cid char(14) not null,

Cpwd char(20) not null,

Tsno char(14) not null,

foreign key (Tsno) references TicketStaff(Tsno)

)

5. 创建订郑州地铁票单基本信息表:

create table Book

(Bno char(14) primary key,

Bdate datetime not null,

Btime datetime not null,

Bqua int check(Bqua>0 and Bqua<51) not null,

Bpou int not null,

Cno char(20) not null,

foreign key (Cno) references Customer(Cno)

)

6. 创建车郑州地铁票基本信息表:

create table Ticket

(Tno char(60) primary key,

Tprice int not null,

Trainno char(8) not null,

Tstype char(8) not null,

Tpno char(8) not null,

Tsta char(20) not null,

Tdes char(20) not null,

Tstatime datetime not null,

Tdestime datetime not null,

Bno char(14) not null,

Dno char(14),

foreign key (Bno) references Book(Bno),

foreign key (Dno) references Dishonour(Dno)

)

7. 创建售郑州地铁票记录基本信息表:

create table Record

(Tno char(60) not null,

Rsty char(6) not null,

Msno char(14) not null,

Rdate datetime not null,

Rtime datetime not null,

Ramo int check(Ramo<100001) not null,

primary key (Tno,Rsty),

foreign key (Tno) references Ticket(Tno),

foreign key (Msno) references MemorySystem(Msno)

)

2.3 应用案例SQL

3 心得体会

通过本次课程设计的学习,让我对数据库有了更深的理解。我们掌握了创建数据库以及对数据库的操作的基础知识。指导老师的指导耐心细致,当我们有不

理解的地方老师都反复讲解,使我们的基础知识掌握的比较牢固。对于数据库我觉得它就是创建一些表格,然后再用一些语句根据他们之间的关系,把它们组合在一起,然后就可以查询我们想要查询的内容。子查询经验就是先写出select *

我们要找什么,然后写条件,我们要找的东西有什么条件,然后在写条件,我们的条件涉及那些表,那些字段,再在这些字段中通过我们学过的简单select语句选出来,有时候还要用到几层子查询,对数据库添加约束条件和关联查询之类的设计,所以在数据库设计是我们需要细心。在本次课程设计中,我们还采用Microsoft Visual Studio 2010开发软件,将其与mySQL数据库相结合,在数据库连接时,我们要注意连接时的细节,以防数据库连接时出现差错。总之在学习过程中,我们要精益求精,争取能够学到更多的知识。

参考文献

[1]明日科技.C#项目案例分析.北京:清华大学出版社,2012.

[2]王珊,萨师煊.数据库系统概述.北京:高等教育出版社,2014.

[3]明日科技.C#经典编程220例.北京:清华大学出版社,2012.

[4]罗福强,杨剑,张敏辉.C#程序设计经典教程.北京:清华大学出版社,2012.

[5]赵萍。公民健康信息管理系统中MySQL数据库技术的应用[J].电脑迷,2017,(06):97.

[6]黄兴。浅析VC在MySQL数据库接口中的应用[J].电子测试,2017,(07):67+59.

[7]汤强,赵耀,王辉,王盼,符胜高。基于PHP和MySQL的教育培训整合平台设计与实现[J].电脑知识与技术,2017,(10):62-63+75.

[8]苟文博,于强。基于MySQL的数据管理系统设计与实现[J].电子设计工程,2017,(06):62-65.

[9]李强。基于MySql的物流管理系统的设计与实现[J].西安文理学院学报(自然科学版),2017,(02):50-54.

[10]赵红霞,王建。基于PHP+MySQL结构的微课在线学习系统设计与实现[J].信息通信,2017,(03):84-85.

[11]孙丽红。利用C#和MySQL实现MIS账户管理的关键技术[J].电脑编程技巧与维护,2017,(03):44-46.

[12]石坤泉,杨震伦。基于MySQL数据库的数据隐私与安全策略研究[J].网络安全技术与应用,2017,(01):79+81.

附录

附录1 ER图

附录2

导入数据

use RTSO

-- 向表中导入数据

insert

into MemorySystem ( Msno, Msadd )

values ( '001' , ' 5号线 ' )

insert

into MemorySystem ( Msno, Msadd )

values ( '003' , ' 3号线 ' )

select *from MemorySystem

insert

into TicketStaff

( Tsno, Tsname, Tsadd )

values ( '112' , ' 李一 ' , ' 5号线 ' )

insert

into TicketStaff

( Tsno, Tsname, Tsadd )

values ( '115' , ' 李二 ' , ' 郑州火车站 ' )

insert

into Customer ( Cno, Cname

, Ccano , Cphone, Cadd, Cid , Cpwd

, Tsno)

values ( '632223

' , ' 陶小心 ' , '923' , '' , ' 5号线 ' , 'asdf123'

, '123456' , '112' )

insert

into Customer ( Cno, Cname

, Ccano , Cphone, Cadd, Cid , Cpwd

, Tsno)

values ( '33270

' , ' 单康枫 ' , '245' , '' , ' 1号线 ' , 'qwer321' , '123456' , '115' )

数据查询

use RTSO

-- 从TicketStaff

中查询员工号为的信息

select

* from TicketStaff

where Tsno ='112'

删除数据

use RTSO

-- 从Customer 中删除姓名为‘小李’的所有信息

delete

from Customer where Cname=' 小李


发布者:admin,转转请注明出处:http://www.yc00.com/web/1707203517a1483765.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信