当前位置:首页 » 操作系统 » 火车票系统数据库

火车票系统数据库

发布时间: 2023-07-03 15:35:49

A. 我要做一个火车票务系统,但是数据库部分就遇到问题了,想请教下大家,关于火车路线表途径站点怎么设计

这个就不应该用数据库弄,全丢内存里得了,

双向链表配合发车站点表来表达一个车次。

一个机器管一片的区域,火车到哪了人的数据就传到哪。

我就不信火车拉人跑得比网络传数据还快。

B. 12306软件买票显示“lPC”,是什么意思

“12306软件买票显示IPC”,恕不能完全正确的回答你。因为本人在选择火车出行的时候,也都是选择12306官方app购票,但是从来也没有出现过显示“IPC”的现象。针对你这个问题,我刚才也特地查询了很多信息,均没有搜到与“12306软件买票显示IPC”相关的任何信息。但是有一些关于“IPC”的解读,以下观点仅代表个人猜测。

IPC(Inter-Process Communication,进程间通信)。主要适用于计算机领域,即 CPU 每一时钟周期内所执行的指令多少) IPC代表了一款处理器的设计架构,一旦该处理器设计完成之后,IPC值就不会再改变了。在这里,IPC值的高低起到了决定性的作用,而频率似乎不再高于一切。CPU性能=IPC(CPU每一时钟周期内所执行的指令多少) 频率(MHz时钟速度),也就是说,影响CPU性能的是频率和IPC在影响CPU性能的。

所以,据本人猜测,如果你的12306账号是正常的话,且在之前有正常购票的记录,那么很有可能是你手机或电脑的网络出现了问题,或者手机、电脑CPU等硬件出现了问题,你可以初步尝试着退出再重新登录12306账号,或者重启下网络,或者把手机、电脑关机重启后,再重新打开12306软件,尝试能否恢复正常。

恕本人不是计算机软件专业,也没有经历过这种现象,所以对于这个问题问题不能正确解读,以上说法也纯属个人猜测,如果能瞎猫碰上死耗子般的帮到了你,我将感觉非常荣幸,如果无效请直接忽略,最后愿你能顺利的买到目的地的车票。

现在的出行是越来越方便,但是火车依旧是我们大家主流的出行交通工具,那么在购票这一块的话,其实也是变化很大的,从之前的线下购票,但现在的网络购票,而这其中12306就是一个非常重要的购票渠道,那么下面和大家一起来说一说12306显示“IPC”的意思。
12306显示“IPC”究竟是什么意思,对于用户来说有何作用
在12306中购票的时候,我也是经常购买火车票的用户了,但是很几乎从来没有遇到过出现“IPC”的标志,可能对于用户来说,确实有一些太过于专业的符号了,但是我们经过查阅大量的资料宣示,其实这个“IPC”的标志就是在用户购买火车票的时候,如果连续的进行查票或者购票的话,那么是需要等待系统进行处理。

而有的时候会遇到一些比较紧急的事情,但是由于在软件的系统库存储不足,所以会导致一些用户的查询请求或者购买请求会出现一定的问题,从而导致12306的系统出现故障,在用户所使用的12306软件界面出现“IPC”的样式。

其实现在的 科技 也已非常的发达,我们作为用户在购票的时候,很少会出现这样的问题,对于在使用12306购票的过程中,我们可能会遇到一些404页面的崩溃情况发生,但是一般情况下,我们只需要进行删除后台,重新启动就可以恢复正常。

在购票的时候,遇到“IPC”或者404等现象的时候,应该如何正确处理
如果说用户们在购票的时候,出现“IPC”或者404等界面奔溃的情况,我们作为用户又应该如何进行处理,其实方法也是非常简单的。

其一:我们直接的对这款软件的后台进行删除清理,然后在重新启动。这也是目前最为简单的一种方法,可以说能够解决大多数的问题。

其二:在使用12306软件购票的时候,我们需要错过用户购票的高峰期,比如说一些节假日前后都是用户购票的高峰期,我们都是需要进行错过的,这样也是能够有效的避免软件界面崩溃的情况出现。

从来没有出现过IPC,但是出现过“503”或者403等,这种情况发生后,即使我们卸载、重新安装都不能解决,一般出现在了乘客订票后无法完成付款的时候。

除了403之外,还出现过503故障问题,询问客服,客服告知就是系统问题,可以通过微信、携程等第三方网站进行购票。其实,12306出现故障的因素很多,我们猜想的是,如果出现了故障,基本上是因为,因为用户量过大,导致了抢票的人数过多导致的服务器的崩溃,遇到这种情况,只能等12306自行修复了。

我们再回到原题,所谓的IPC,网络中的解释是:IPC(Inter-Process Communication)进程间通信,提供了各种进程间通信的方法。又称网络摄像机。因此,如果出现了IPC,很可能是系统出错了,日志报错了而已。

我们平常遇到12306问题的时候,还是建议直接在第三方平台进行购买,或者错开高峰期,因为这就是因为服务器不能承受大量数据导致的。

你确定出现的字是IPC?根据官方的解释IPC ( Instruction Per Clock, 即 CPU 每一时钟周期内所执行的指令多少) IPC代表了一款处理器的设计架构,一旦该处理器设计完成之后,IPC值就不会再改变了。

如果在12306软件上出现了IPC那就是代表着他表现出来的是他的处理器的架构设计?这完全牛头不对马嘴。除非有一种可能会出现这样的情况,而且还是不好的可能。

前面我们说道IPC代表的是处理器的设计架构,一般情况下稳定以后就不会再发生改变。如果在使用软件的过程中出现这种事,那只能代表你的手机或者是软件出现了问题。这时候就看是那些问题了。

如果是手机出现问题的话,那也就是说你不能正常的使用软件,会出现12306闪退、手机与12306不兼容等问题。 如果你用的是电脑,那么也会出现这种情况。

如果是软件出问题,那基本上你就不能进行购票服务,买不了票或者说是无法下单。 到底是哪个问题主要看你的使用的设备是什么反应。

其实目前来讲买票的方式有很多,很少用12306官方的软件进行购票。其实说实话,12306软件并不怎么好用,反而是第三方软件更让人满意。言归正传,对于问题而言,只需要针对问题进行解决就好了。删除软件重新下载,或者去维修设备。

一般情况下,很少见会出现这样的问题,从目前的情况来看,题主这也是第一次遇到啊。

    题主所说的问题,大概在2012年左右才会发生,当时12306铁路购票,刚刚上线,由于无法满足同时大量的查询、购票,导致12306订票系统瘫痪,提示“IPC"等软件调试信息,让用户等待。

    什么是IPC?
    简单来说,IPC是应用程序进程之间的通信机制,主要有信号量、消息队列、共享内存等,实现进程之间的通信。

    这里拿12306购票来说,火车票的数量是有限的,如果数据库不够优化,每次购票都要使用事务,会导致后续的查询排队,直接导致前端请求变慢,如果用户这时更快的去刷票,而不是等待请求处理完,会导致恶行循环。为了让事务尽快结束,或者干脆不用事务,那么就需要使用系统IPC等锁方案。

    12306已经很少再”瘫痪"
    我们发现,近些年来12306很少再瘫痪了,即便是春运等高峰期买票,也不会发生系统无法登陆,系统繁忙之类的错误,很大一部分原因是,12306将余票查询模块放到了阿里云,采用了阿里的技术应对大流量的网络购票。

    12306购票90%以上的流量来自于余票查询,主要采取的措施是:

    总之,12306订票系统经过多年的发展,已经非常完善,可以应对春运等这样大流量的订票,不会发生系统瘫痪等问题,这背后离不开阿里云技术的支持。

从来没有遇到过,可否提供ipc图片

就是软件的时候写进入的日志输出呗。很明显是报错了。

IPC备案 《互联网信息服务管理办法》指出互联网信息服务分为经营性和非经营性两类。国家对经营性互联网信息服务实行许可制度;对非经营性互联网信息服务实行备案制度。未取得许可或者未履行备案手续的,不得从事互联网信息服务。《非经营性互联网信息服务备案管理办法》于2005年3月20日起施行。办法指出在中华人民共和国境内提供非经营性互联网信息服务,应当依法履行备案手续。未经备案,不得在中华人民共和国境内从事非经营性互联网信息服务。

在购票的时候,遇到“IPC”或者404等现象的时候,应该如何正确处理

如果说用户们在购票的时候,出现“IPC”或者404等界面崩溃的情况,我们作为用户又应该如何进行处理,其实方法也是非常简单的。

其一:我们直接的对这款软件的后台进行删除清理,然后在重新启动。这也是目前最为简单的一种方法,可以说能够解决大多数的问题。

其二:在使用12306软件购票的时候,我们需要错过用户购票的高峰期,比如说一些节假日前后都是用户购票的高峰期,我们都是需要进行错过的,这样也是能够有效地避免软件界面崩溃的情况出现。

C. 火车票定购系统数据库数据库

你想用什么数据库做 SQL 还是 MYSQL 还是ACCESS

D. 那个我也想要一个数据库设计事例,就是火车售票管理SQL

目录
概述: 5
1. 需求分析 5
1.1 用户需求: 5
1.2 业务流程分析: 6
1.3 信息需求分析 6
1.4 功能需求分析: 7
2. (数据库)概念(模型)设计 8
2.1构思ERD的四条原则及根据这些原则相应得出的实体、联系及其属性: 9
2.2、系统具体E-R图: 9
3. (数据库)逻辑(模型)设计 10
3.1 一般逻辑模型设计: 10
3.2 具体逻辑模型设计: 11
4. 数据库物理设计与数据库保护设计 12
5. 处理功能设计 12
5.1 主控模块设计: 12
5.2 子模块设计: 13
6. 数据库应用系统的实现 14
6.1 数据库及其表结构的建立: 14
6.2 创建表的相关视图: 16
6.3 各表关系图, 16
6.4 数据输入:利用系统录入数据,如下图为各表内容: 17
6.5 模块实现: 18
7. 数据库应用系统运行 26
7.1 写出系统操作使用的简要说明。 26
7.2 按使用说明运行系统并打印出运行结果。 26
7.3 系统评价: 27

报告内容
概述:
随着国民经济快速发展, 人们出行、交通越来越频繁, 对服务的快捷、便利性要求也越来越高。从而对客运行业的建设与管理提出了更高的要求。为适应和推动客运行业的发展, 各种交通公司和部门开始广泛采用使用日趋成熟的计算机技术和数据库技术来实现票务信息的现代化管理,具有手工管理所无法比拟的优点,如:检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本底等。这些优点能够极大地提高信息管理和业务管理的效率。
本学生火车订票系统正是通过数据库存储信息实现高效率管理。该实验设计首先进行需求分析,然后在需求文档的指导下实现系统的功能,如操作员的信息管理功能及普通学生的火车信息查询、订票、退票等功能,最终实现的是学生购得一张自己满意的票券,同时力求通过数据库系统及计算机在其中的运用达到提高工作效率,节约人力资源的效果。

1. 需求分析
1.1 用户需求:
(一)、问题描述:
学生火车票定票系统
(1)背景:一年两次的火车票订票管理
(2)主要实现以下功能:
1)学生基本信息的管理,尤其是所在地
2)学生购票的基本信息,尤其是价钱和车票目的地
3)购票以后的分发管理
4)退票的管理
5)信息的统计和查询
6)操作员管理
(二)、目的及现状:
1)、实验目的:
数据库设计就是要使学生采用本课程中学习的数据库设计方法,运用其基本思路与主要图表工具完成一个自己所了解的业务的数据库应用系统信息需求分析与数据库的概念设计、逻辑设计、物理设计以及处理功能设计,用自己熟悉的数据库管理系统、程序设计语言及其相关开发工具实现该系统,并运行、评价、改进之;在此基础上严格按本大纲所附报告提纲撰写课程设计报告。通过本设计进一步弄懂数据库系统及其相关的基本概念,理解数据库系统的系统结构、主要特点,掌握数据库设计的原理、方法及其基本过程,初步具备数据库应用设计的能力,初步形成运用数据库应用系统解决管理决策中的实际问题的基本素质。
2)、现状和系统要求:
在传统模式下利用人工进行火车订票业务,存在着较多的缺点,如:效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。诸如这些情况,给各相关部门工作人员带来了很大困难,严重影响了他们的工作效率。运用计算机技术和数据库技术来实现票务信息的现代化管理,具有手工管理所无法比拟的优点,如:检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本底等。这些优点能够极大地提高信息管理和业务管理的效率。
在本系统中,系统用户共有两种, 并根据用户权限的不同而实现不同的功能,如操作员
拥有添加、修改、删除某火车相关信息及修改自己的个人信息的功能。学生有对车票信息、、哪一车次哪天还剩余多少张票和自己所订票券的查询功能,订票功能及退票功能。系统利用计算机和数据库的高效率大大减轻了学校票点工作人员的劳动强度, 提高了各部门的工作效率。
1.2 业务流程分析:
(一)、描述系统的业务流程:
本系统共有两种用户, 根据用户权限的不同而实现不同的功能。
操作员的权限最大,他进入系统必须先登录。操作员可以添加、修改、删除某车票的相关信息,可以修改自己的个人信息;查询、删除学生的订票情况,确认学生是否已付款取票等。
学生可以按目的地的车次对车票信息进行查询,可以订票,订票时须录入自己的信息及所选择的车次,系统将检查该车次票数是否已订完或不足,若已订完或不足则提示错误信息并返回到订票界面,订票成功后将生成订票单。学生还可以对自己所订的票券即订票单进行查询,以及查询哪一车次哪天还剩余多少张票。用户付款和取票可在学校票点完成。
(二)、初步业务流程图:

1.3 信息需求分析
1.3.1 资料收集

1.3.2 事项分析:
在本火车票订票系统中,各资料的基本数据项列举如下:
学生资料:学号,姓名,密码,所在学院,专业,班级,电话,目的城市
车票基本信息:车次号,出发站,开车时间,到达站,到达时间,车票种类,余票数
车次详细信息:ID号,车次号,途径站,票价,
订票单信息:订单号,订票人学号,订单时间,付款取票与否
订票具体信息:ID号,订单号,所得车次号,目的城市,订票数,总票价,取票时间
订票点信息:票点号,票点主任的员工号,联系电话,所在校区
操作员资料:员工号,票点号,密码,姓名,性别,电话
1.4 功能需求分析:
(一)、完善业务流程图:

(二)、功能层次图:
本系统共有两种用户, 根据用户权限的不同而实现不同的功能,如操作员查询、添加、修改、删除某火车相关信息及查询、修改自己的个人信息的功能。学生对车票信息、、哪一车次哪天还剩余多少张票和订票功能以及对自己所订票券的查询功能、退票功能。

2. (数据库)概念(模型)设计
2.1构思ERD的四条原则及根据这些原则相应得出的实体、联系及其属性:

① 原则1 (确定实体):能独立存在的事物,例如人、物、事、地、团体、机构、活动、事项等等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。
在本系统中,实体主要有学生、操作员、车票信息、车票详细信息表、订票单,订票详细信息表,订票点。
②原则2 (确定联系):两个或多个实体间的关联与结合,如主管,从属,组成,占有,作用,配合,协同等等,当需要予以关注时,应作为联系。实体间的联系可分为一对一、一对多、多对多等三类,在确定联系时还要确定其类型。
在本系统中,学生、车票信息、订票单和订票详细信息表之间存在“订购”的联系,一个车票信息可以被多个学生购买,而一个学生只可以购买多个车次所属的一到两张车票,它们之间的联系是一对多的“购买”联系,同时一次登录无论订多少车次只生成一张订票单。订票点和操作员之间存在“隶属”的联系,它们之间的联系是一对多的“隶属”联系;车票信息和车票详细信息表之间存在“包含”与被包含的关系;订票单和订票详细信息表之间也存在“包含”与被包含的关系。
③原则3 (确定属性):实体的属性是实体的本质特征。实体应有标识属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识。联系的属性是联系的结果或状态。
从这条原则可得到实体和联系的属性如下:
学生(学号,姓名,密码,所在学院,专业,班级,电话,目的城市)
车票基本信息(车次号,出发站,开车时间,到达站,到达时间,车票种类,余票数)
车次详细信息(ID号,车次号,途径站,票价)
订票单信息(订单号,订票人学号,订单时间,付款取票与否)
订票具体信息(ID号,订单号,所得车次号,目的城市,订票数,总票价,取票时间)
订票点(票点号,票点主任的员工号,所在校区,电话)
操作员(员工号,票点号,密码,姓名,性别,电话)

④原则4(一事一地):信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。
根据以上的分析,可以画出本系统的原始ERD的基本结构。如

2.2、系统具体E-R图:

3. (数据库)逻辑(模型)设计
3.1 一般逻辑模型设计:
(一)、由ERD导出一般关系模型的四条原则:
原则1(实体转换为关系模式):ERD中每个独立的实体转换为一个关系模式,实体的属性组成关系的属性,实体的主标识转换成关系的主码。
原则2(从实体及其主从联系转换为关系模式):ERD中一个从实体及其主从联系转换为一个关系,从实体的属性及其主实体关系的属性组成的属性,其主实体关系的主码,在主从关系联系为一对多联系时还要加上可把同一主实体个体所对应的从实体个体区分开来的,从实体的一组属性,作为该关系的主码。对子类实体可作类似一对一联系的从实体的转换。
原则3(一对多联系在关系模式中的表示):ERD中的一个一对多联系通过在其“多”实体关系上增加“1”实体关系的主码(作为外码)和联系本身的属性来表示。
原则4(多对多联系转换为关系):ERD中的一个多对多联系转换为一个关系,其被联系实体关系的主码和该联系本身的属性一起组成的属性,被联系关系的主码组成该关系的复合主码。

(二)、数据库初步构思的关系框架:
通过ERD转换为一般关系模型四条原则分析,得到须在数据库中进行存储的一般关系模型如下(带下划线的为主码,带#的为外键):
学生(学号,姓名,密码,所在学院,专业,班级,电话,目的城市)
车票基本信息(车次号,出发站,开车时间,到达站,到达时间,车票种类,余票数)
车次详细信息(ID号,车次号#,途径站,票价)
订票单信息(订单号,订票人学号#,订单时间,付款取票与否)
订票具体信息(ID号,订单号#,所得车次号#,目的城市,订票数,总票价,取票时间)
订票点(票点号,票点主任的员工号#,所在校区)
操作员(员工号,密码,姓名,性别,电话)
3.2 具体逻辑模型设计:
(1)、Student表:用来保存学生信息:
项名 类型 长度 小数位 值域 主键 外键 空键
学号 字符 12 是 非空
姓名 字符 20 非空
密码 字符 12 非空
学院 字符 40 非空
专业 字符 30 非空
班级 数据 4 0 >0 非空
电话 字符 12 非空
目的城市 字符 30 非空
(2)、Ticket表:用来保存车票信息表
项名 类型 长度 小数位 值域 主键 外键 空键
车次号 字符 20 是 非空
出发站 字符 30 非空
开车时间 日期 8 非空
到达站 字符 30 非空
到达时间 日期 8 非空
车票种类 字符 20 非空
余票数 数据 8 0 >0 非空
(3)、Citysite表:用来保存车票详细信息表:
项名 类型 长度 小数位 值域 主键 外键 空键
ID号 整数,自动编号 8 是 非空
车次号 字符 20 是 非空
途径城市 字符 30 非空
票价 decimal 非空

(4)、Ticketsite表:用来保存订票点表:
项名 类型 长度 小数位 值域 主键 外键 空键
票点号 整数,自动编号 8 0 是 非空
票点主任员工号 整数,自动编号 8 0 是 非空
联系电话 字符 12 非空
所在校区 字符 40 非空
(5)、Admin表:用来保存操作员表:
项名 类型 长度 小数位 值域 主键 外键 空键
员工号 整数,自动编号 8 0 是 非空
用户名 字符 20 非空
密码 字符 12 非空
姓名 字符 20 非空
性别 字符 4 非空
电话 字符 12 非空
(6)、Book表:用来保存订单表:
项名 类型 长度 小数位 值域 主键 外键 空键
订单号 整数,自动编号 8 0 是 非空
学号 字符 是 非空
订单时间 字符 非空
付款取票与否 整数 2 0 非空
(7)、Ticket表:用来保存取票单表:
项名 类型 长度 小数位 值域 主键 外键 空键
ID号 整数,自动编号 8 0 是 非空
取票号 字符 8 0 是 非空
车次号 字符 是 非空
目的城市 字符 非空
订票数 数据 8 0 >0 非空
总票价 Decimal 非空
取票时间 日期 8 非空
4. 数据库物理设计与数据库保护设计
根据表的结构关系,本系统采用SQL Server 2000数据库。SQL Server 2000是微软公司关系型数据库产品,它是在由MS SQL Server 7.0建立的坚固基础之上产生的。客户的需求极大的推动了该产的革新,SQL Server2000在易用性、可缩放性和可靠性,以及数据仓库等诸多方面有了很大的增强。这使得SQL Server 2000在很多数据库产品发展最快的应用领域(如电子商务、移动计算、分支自动化、商业级应用和数据交换中心等)中成为领先者
在数据库中创建表的同时须创建相关的索引。索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。本数据库表较为简单,且每个表中定义主键约束或者唯一性键约束,已经间接创建了索引,故无需再创建索引。
5. 处理功能设计
5.1 主控模块设计:

(1)、登录系统模块:
在登录窗体界面中,你可以输入代码和密码,选择你的身份(操作员或系统管理员),确认后就可进入主界面窗体。如果你是学生,且还没注册,可以在此窗体界面上点击“注册”,在注册界面输入所要求的项,确定后重新返回登录界面,用你刚注册的账号登录进入主界面。
在主界面中包含上述模块图的几部分,根据身份,即是用户或者管理员,对应权限不同,分为不同的主界面,即用户主界面和管理员主界面。
(2)、系统设置模块图:
用户:在此模块用户可以查询、修改自身注册信息以及退出登录,退出系统后将返回登录界面。

管理员模块:在此模块管理员除了拥有用户的各项设置外还可以注册新的管理员,但为了安全起见,此功能只有当登录人是票点主任时才可执行。

5.2 子模块设计:
5.2.1、管理员模块
1、车票信息管理模块:在此模块,管理员可以执行车票信息录入、查询、删除和修改功能,不过删除和修改功能须当该车次没有被预订的情况下才可执行。

2、订票管理模块:在此模块,管理员可以查询所有订单情况、已付款取票和未付款取票的订单情况,还可以按学号查询某学生的订票情况以及各种统计信息,并在学生来付款取票时执行“付款”操作。另外还可以在订单已付款或学生取消订单时删除订单。

5.2.2、用户模块:
1、订票管理模块:在此模块,用户可以查询车票信息和自身订票情况。查询车票情况分为按车次、按目的地、按起始站—目的站查询,当查询到自身所想要的车票时即可订票,但注意预定票的目的地须与学生家乡所在城市相符,否则系统不允许订票;查询自身订票情况包括订单信息及金额统计,还须注意订票信息上要求的取票期限,订票人须在规定期限内去所在校区的票点付款取票,逾期票点工作人员将不予处理。

2、用户小贴士模块:在这里,用户将了解本订票系统的订票流程及相关规定及用户订票后付款取票地点的信息等。

6. 数据库应用系统的实现
6.1 数据库及其表结构的建立:
利用SQLServer企业管理器创建数据库Tickets,然后创建表:
1、学生表Book
create table Student
(Sno varchar(12) primary key, Sname varchar(20) not null,
Ssex varchar(4) not null, Spw varchar(12) not null, //密码
Sadm varchar(40) not null, //学院
Sdept varchar(30) not null, Sclass numeric(4) not null,
Stel varchar(12) not null, //电话
Semail varchar(50) not null, Shcity varchar(30) not null //所在地
);
2、车票信息表Ticket
create table Ticket
(Tno varchar(20) primary key, //车次号
Startcity varchar(30) not null, Starttime varchar(20) not null,
Endcity varchar(100) not null, Endtime varchar(20) not null,
Ttype varchar(20) CHECK (Ttype IN('硬座','软座','硬卧','软卧')),
Tickets int not null //票数
);
3、车次站次信息表Citysite
create table Citysite
(Cityno numeric(8) identity(1,1), //票点号
Tno varchar(20), City varchar(100),
Tprice decimal not null, //票价
primary key (Cityno,Tno),
foreign key (Tno) references Ticket(Tno) on delete cascade
)
4、订票单表Book
create table Book
(Bno numeric(8) identity(1,1) primary key, Sno varchar(12),
Maketime datetime not null, judge int,
foreign key (Sno) references Student(Sno),);
5、订票详细信息表Bookno
create table Bookno
(ID numeric(8) identity(1,1) primary key,
Bno numeric(8), Tno varchar(20), City varchar(100),
Booktime varchar(20) not null, Ticketnums int not null,
Price decimal not null, //票价
Pickdate datetime not null, foreign key (Tno) references Ticket(Tno),
foreign key (Bno) references Book(Bno));
6、操作员表Operater
create table Operater
(Adname varchar(20) primary key, //登录用户名
Adpw varchar(12) not null, //登录密码
Opname varchar(20) not null, //员工真实姓名
Opsex varchar(4) not null, Optel varchar(12) not null,
Opemail varchar(50) not null);
7、订票点表Ticketsite
create table Ticketsite
(Siteno numeric(8) primary key identity, //票点号
Adname varchar(20), // 票点主任登录名
Sitetel varchar(12) not null, Siteaddr varchar(40),
foreign key (Adname) references Operater(Adname));
//为安全起见,学校各校区订票点内容的添加要以直接输入数据库的方式进行
insert into Ticketsite(Adname,Sitetel,Siteaddr) values('linyp','870432','龙洞校区行政楼205')
insert into Ticketsite(Adname,Sitetel,Siteaddr) values('admin','87084432','大学城校区E区205')
6.2 创建表的相关视图:
1、创建V_Book视图,得到对于某种车票的订票人数和订票张数
create view V_Book(Tno,stu_no,sumticket)
as
select Tno,count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno group by Tno
2、创建W_Book视图,得到对于所有订票学生的人数和订票总张数
create view W_Book(stu_nums,sumtickets)
as select count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno
3、创建P_Book视图,得到对于已付款取票的人数和车票总张数
create view P_Book(cout_no,cout_nums)
as select count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno and judge=1
4、创建M_Book视图, 得到对于某一订票的总金额
create view M_Book(Allprice)
as select sum(Tprice*Ticketnums) from Book,Bookno,Citysite
where Bookno.Bno=Book.Bno and Bookno.Tno=Citysite.Tno and Bookno.City=Citysite.City
6.3 各表关系图,

易知表Ticket与表Citysite之间是父表与子表的关系:

表Book与表Bookno之间也是父表与子表的关系:

它们之间都是父表对子表的一对多的关系。
根据表之间的结构关系图,可以得出各表的完整性约束条件如下图:
表名 主键列名 外键
外键列名 参照表
Student Sno 无
Ticket Tno 无
Citysite Cityno Tno Ticket
Book Bno Sno Student
Bookno ID Bno,Tno Book,Ticket
Operater Adname 无
Ticketsite Siteno Adname Operater

6.4 数据输入:利用系统录入数据,如下图为各表内容:

6.5 模块实现:
本次系统设计我前台采用JSP技术,后台采用SQL Server 2000,操作系统采用Windows XP。
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

E. 数据库是什么Oracle又是啥玩意

经常会有人问我数据库是干啥的,其实一开始我是拒绝回答的,因为我也不能做到通俗易懂的表达出来,毕竟我接触这个概念也没有多长时间,但随着问的人多了,我觉得是时候脑补一下我的第一堂课了,万一哪天冒出来个货跟你掰扯这事儿,你没分分钟给他说清,最后弄个丢里儿丢面儿,好尴尬呀。

数据库,说白了就是按照数据结构来组织、存储和管理数据的仓库,这些数据是结构化的,并可为多种应用服务。也就是说,数据库是使用计算机服务器来存储数据的,专门用来提供各种数兆汪据服务。可以这样想象,过去一个公司的所有财务数据都是放在保险柜里面,而现在我们就可以针对这些财务数据搭建一个数据库放在某台计算机或服务器上面;再比如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以乱手利用计算机实现财务、仓库、生产的自动化管理。最常见的数据库有:银行储蓄系统、手机话费系统、美容美发会员系统、超市会员积分系统、水电费系统、机票或火车票系统等,这些都需要后台数据库基础设施的支撑。举了这么多例子,应该是把数据库说明白了,至少能在大脑里面有个概念,知道这个东西是干啥的。

现在大数据被炒的红得发紫,而大数据的基础也是数据,由此可见,数据是一个企业的核心资源,说它是企业的立身之本、发展之基都不为过,因此,维护数据库的数据库管理员(DBA)是企业不可或缺的。

目前市面上的数据库产品有很多,单从规模上分可分为大型、中型、小型几种,典型的数据库产品如下:

大型数据库:Oracle、DB2、Sybase;

中型数据库:MySQL、SQLServer、Infomix;

小型数据库:Access、VisualFoxpro。在众多的数据库产品中,Oracle数据库一直处于行业领导先地位,也是当今最流行的关系型数据库。Oracle可翻译成"甲骨文",它是一家以数据库为主业的全球化公司,是全球第二大软件公司(第一名是微软公司),目前Oracle在数据库软件市场已经排名第一,数据库软件市场份额达到48.6%,遥遥领先于第二名占有率仅为20.7%的IBM公司的DB2。在中国市场上的计算机专业系统后台所使用的数据库尤以Oracle数据库居多。但是购买Oracle数据库需要很大一笔费用,一般的大型企业使用,需要有专业人员进行管理和维护,中小企业承担不起。中小企业为了节省成本,一般使用MySQL、PostgreSQL这类免费开源的数据哗猜嫌库,所以Oracle数据库相关的工作岗位一般是在大型企业中。

对于为什么选择Oracle数据库,而不是其他的数据库?

第一,是因为Oracle数据库占据最大的市场份额,并且越来越大,市场需要很多Oracle数据库方面的人才,中国有句老话说"做对事,选对人",是同样的道理;第二,是很多非Oracle数据库的老系统正往Oracle数据库迁移,其他数据库市场占有率在减少,其他数据库工作者有面临失业的风险;第三,Oracle有大量的官方学习文档,还有部分中文文档,可以有效地进行学习;第四,Oracle有大量的从业人员,有共同方向的朋友可以互相帮助,不再是孤胆英雄;第五,是可以很容易地从Oracle官方网站下载功能齐全的数据库最新版本进行学习,可以让你了解数据库方面的最新发展趋势等。

在此说明,以后的所有内容都是基于Oracle11g数据库产品的,下面我们就简单介绍一下Oracle11g的系列产品:

企业版(EnterpriseEdition)此版本包含了数据库的所有组件,并且能够通过购买选项和程序包来进一步对其增强。

能支持例如大业务量的在线事务处理OLTP(On-LineTransactionProcessing联机事务处理系统)环境、查询密集的数据仓库和要求苛刻的互联网应用程序。

标准版1(StandardEditionOne)此版本为工作组、部门级和互联网、内联网应用程序提供了前所未有的易用性和性价比。从针对小型商务的单服务器环境到大型的分布式部门环境,该版本包含了构建重要商务应用程序所必需的全部工具。它仅许可在最高容量为2个处理器的服务器上使用,支持Windows/Linux/UNIX操作系统,并支持64位平台操作系统。

标准版(StandardEdition)此版本提供了StandardEditionOne所不具有的易用性、能力和性能,并且利用真正的应用集群(RAC)提供了对更大型计算机和服务集群的支持。它可以在最高容量为4个处理器的单台服务器上、或者在一个支持最多4个处理器的集群上使用,可支持Windows、Linux和UNIX操作系统,并支持64位平台操作系统。

简化版此版本支持与标准版1、标准版和企业版完全兼容的单用户开发和部署。通过将Oracle数据库获奖的功能引入到个人工作站中,该版本提供了结合世界上最流行的数据库功能的数据库,并且该数据库具有桌面产品通常具有的易用性和简单性,可支持Linux和Windows操作系统。

从存储结构上来说,目前流行的数据库主要包含以下两种:

RDBMS:关系型数据库,是指采用了关系模型来组织数据的数据库;

NoSQL数据库,是指那些非关系型的、分布式的数据库。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

关系型数据库优点:

1、容易理解

二维表结构是非常贴近逻辑世界的一个概念,关系模型相对网状、层次等其他模型来说更容易理解。

2、使用方便

通用的SQL语言使得操作关系型数据库非常方便。

3、易于维护

丰富的完整性大大减低了数据冗余和数据部移植的概率。

4、事务安全

所有关系型数据库都不同程度的遵守事物的四个基本属性,因此对于银行、电信、证券等交易型业务是不可或缺的。

关系型数据库的瓶颈:

1、高并发读写需求

网站的用户并发性非常高,往往达到每秒上万次读写请求,对于传统型数据库来说,硬盘I/O是一个很大的瓶颈。

2、海量数据的高效率读写

互联网上每天产生的数据量是巨大的,对于关系型数据库来说,在一张包含海量数据的表中查询,效率是非常低的。

3、高扩展性和可用性

在基于WEB的结构中,数据库是最难进行横向扩展的,当一个应用系统的用户量和访问量与日俱增的时候,数据库却没有办法像WEBServer和APPLICATIONServer那样简单的通过添加更多的硬件和服务节点来扩展性能和负载能力。对于很多需要提供24小时不间断服务的网站来说,对数据库系统进行升级和扩展是非常痛苦的事情,往往需要停机维护和数据迁移。

NoSQL数据库

NoSQL一词首先是CarloStrozzi在1998年提出的。2009年再次提出了NoSQL一词,用于指那些非关系型的、分布式的,且一般不保证遵循ACID原则的数据存储系统。

NoSQL具有以下特点:

1、可以弥补关系型数据库的不足

2、针对某些特定的需求而设计,可以具有极高的性能

3、大部分都是开源的,由于成熟度不够,存在潜在的稳定性和维护性问题。

关系型数据库适用于结构化数据,而非关系型数据库适用于非结构化数据,二者优势互补,相得益彰。

Oracle数据库未来的发展方向是提供结构化、非结构化、半结构化的解决方案,实现关系型数据库和NoSQL共存互补。值得强调的是,目前关系型数据库仍是主流数据库。

虽然NoSQL数据库打破了关系型数据库存储的观念,可以很好地满足WEB2.0时代数据的存储要求,但NoSQL数据库也有自己的缺陷。在现阶段的情况下,可以将关系型数据库和NoSQL数据库结合使用,相互弥补各自的不足。

关于数据库及其代表产品Oracle今天就介绍这么多,有兴趣的可以继续深挖,希望我的介绍能让你对数据库有一个更深入的认识。如果有志于在这方面发展的话,就让我们一起跟往事干杯从头再来。

热点内容
算法化是 发布:2025-03-20 03:48:20 浏览:770
拆二代访问 发布:2025-03-20 03:47:34 浏览:62
随机数排序c语言 发布:2025-03-20 03:35:31 浏览:497
当前页面脚本发生错误类型不匹配 发布:2025-03-20 03:26:47 浏览:991
strutsajax上传图片 发布:2025-03-20 03:25:03 浏览:385
手机在线缓存 发布:2025-03-20 03:21:06 浏览:45
ftp路径上传时间 发布:2025-03-20 03:13:42 浏览:103
电脑连接通讯服务器失败怎么回事 发布:2025-03-20 03:10:30 浏览:286
cmake静态编译库 发布:2025-03-20 02:55:25 浏览:409
手机存储修复 发布:2025-03-20 02:48:14 浏览:269