航班查询系统.docx

上传人:b****8 文档编号:10465067 上传时间:2023-02-13 格式:DOCX 页数:30 大小:88.24KB
下载 相关 举报
航班查询系统.docx_第1页
第1页 / 共30页
航班查询系统.docx_第2页
第2页 / 共30页
航班查询系统.docx_第3页
第3页 / 共30页
航班查询系统.docx_第4页
第4页 / 共30页
航班查询系统.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

航班查询系统.docx

《航班查询系统.docx》由会员分享,可在线阅读,更多相关《航班查询系统.docx(30页珍藏版)》请在冰豆网上搜索。

航班查询系统.docx

航班查询系统

航班查询系统

背景、目的和意义

主要功能描述

三、软/硬件环境

四、数据库设计

五、界面设计

六、编程过程中所遇难题

七、分工协作

八、收获

 

一、背景:

学习了数据库软件SQL2005和MicrosoftVisualStudio2008后想到了用这2

个软件做这个航班查询系统,通过ASP做出SQL的界面并导入存储过程

对功能进行实现!

目的和意义:

机票查询系统是为机场工作人员和客户提供机票信息查询等与机票相关内容和管理的系统,它具有开放体系结构的、易扩充的、易维护的、具有良好人机界面的优点.它除克服了存储乘客信息少,查询效率低下等问题外,更重要的是其安全性,可靠性。

它为企业的决策层提供准确、精细、迅速的机票销售信息,为乘客出行提供方便,便于机场工作人员对机票信息进行管理,提高了机场工作人员对机票管理的工作效率。

为便于旅客通过代售点查询航班信息,要求系统能有效、快速、安全、可靠和无误的完成上述操作。

并要求客户机的界面要简单明了,易于操作,服务器程序利于维护

航班查询系统需要完成功能主要有:

(1)管理员对航班信息的输入、修改和查询,对用户信息的查询。

(2)旅客信息的注册和登录及对航班信息的查询。

1.1数据分析

航班信息(航班号,机型,航空公司,起飞城市,到达城市,起飞时间,到

达时间,总票数,剩余票数)

旅客信息(用户名,密码,性别,年龄)

1.2用户活动分析

用户通过系统查询航班信息。

用户活动图:

1、主要功能描述

2.1航班信息维护模块

提供航班信息的录入、删除、修改。

可以录入航班情况。

机型,航空公司,起飞城市,到

达城市,起飞时间,到达时间,总票数,剩余票数。

当航班信息改变时可以修改航班信息数

据库。

2.2航班业务处理模块

提供查询航班剩余票数功能。

客户可以登录航班购票系统进行查询;如果该航班已经无票,可以换乘。

系统功能图

/

系统流程图

数据流图1:

管理员

管理员

三、软/硬件环境:

使用MicrosoftVisualStudio2008和MicrosoftSQLServer2005电脑是windows764bit

操作系统。

4、数据字典

1)数据项

表2-1

数据项名

含义说明

数据类型

长度

说明

航班号

航班信息

varchar

50

航班号码

航班信息

varchar

10

航班所属机型

机型

航空公司

航线信息

char

10

航班所属公司

起飞城市

航线信息

char

10

飞机起飞城市

到达城市

航线信息

char

10

飞机到达城市

起飞时间

航班信息

char

10

飞机起飞时间

到达时间

航班信息

char

10

飞机到达时间

总票数

航班信息

varchar

50

航班的总票数

剩余票数

航班信息

varchar

50

航班的剩余票数

Username

用户信息

char

10

用户名

Psw

用户信息

char

10

密码

Sex

用户信息

char

10

性别

Age

用户信息

char

10

年龄

ulevel

用户信息

char

10

用户等级

2)数据结构

表2-2

名称

简述

组成

company

定义公司相关信息

公司名,公司地址,公司代码,公司电话

ticket

定义机票相关信息

机票号,座位,票价,航班号

Flight

定义航班相关信息

航班号,出发地,至泌地,出发时间,至U达时

间,公司代码,航班号

air

定义飞机相关信息

航程,飞机号,票价

3)数据流

名称

简述

来源

去向

组成

用户

旅客相关信息

旅客本身

登录购票系统

Username

Psw

SexAgeulevel

4)数据存储

表2-3

名称

简述

组成

Company

定义公司相关信息

CID,Cname,Caddress,Cphone

Flightticket

定义机票相关信息

ticketID,price,seatnumbe,Flightnumber

Customer

定义旅客相关信息

IDnumber,name,Pnumber,Address

Air

定义飞机相关信息

Airnumber,Voyage,price

5)处理过程

名称

说明

输入

输出

处理

Userlogin

用户登录

用户名,密码,性别,年龄,用户等级

旅客

档案

整理用户

信息

5、概念结构设计

1.1概念结构设计的方法

概念设计阶段采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。

对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。

1.2概念结构设计的步骤

第一步是进行局部视图的设计:

由于高层的数据流图只能反映系统的概貌,而中层流图能较

好的反映系统中各局部应用的子系统组成。

因此我们们先逐一的设计分E-R图。

第二步是进行视图的集成:

各子系统的E-R图设计好之后,下一步就是要将所有的分E-R

图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集

成两个分E-R图。

概念模型设计

E—R图

 

姓名

电话号码

身份证号

住址

出发

时间

飞机

目的地

使用

票价

查询

1

航班

拥有

机票号

公司代码

出发

1

n

公司

订票时间

公司

机票

Q身份证

*

订票

到达

时间

机票

航班

航程

飞机

公司代码

航空公司

公司

电话

地址

 

逻辑设计

将ER图转换为关系模式顾客(用户名,密码,性别,年龄)。

航班(航班号,机型,航班公司,起飞城市,到达城市,起飞时间,到达时间,总票数,剩余票数)。

Customer(Username,psw,sex,ageulevel)

Flight(航班号,机型,航班公司,起飞城市,到达城市,起飞时间,到达时间,总票数,剩余票数)

下划线标注的属性为主码。

以上关系模式均为BCNF。

物理设计

一、为了提高在表中搜索元祖的速度,在实际实现的时候应该基于码机建立索引。

各表中简历索引的表项:

("Customer(Username)

(2)Flight(航班号)

二、[用SQL实现设计]

1、建立Customer表

CREATETABLE[dbo].[用户表](

[username][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,

[psw][char](10)COLLATEChinese_PRC_CI_ASNULL,

[sex][char](10)COLLATEChinese_PRC_CI_ASNULL,

[age][char](10)COLLATEChinese_PRC_CI_ASNULL,

[ulevel][char](10)COLLATEChinese_PRC_CI_ASNULL,

CONSTRAINT[PK_用户表]PRIMARYKEYCLUSTERED

[username]ASC

)WITH(PAD_INDEX=OFF,IGNORE_DUP_KEY=OFF)ON[PRIMARY]

)ON[PRIMARY]

2、建立Airplane表

CREATETABLE[dbo].[Airplane](

[航班号][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,

[机型][varchar](10)COLLATEChinese_PRC_CI_ASNULL,

[航空公司][char](10)COLLATEChinese_PRC_CI_ASNULL,

[起飞城市][char](10)COLLATEChinese_PRC_CI_ASNULL,

[到达城市][char](10)COLLATEChinese_PRC_CI_ASNULL,

[起飞时间][char](10)COLLATEChinese_PRC_CI_ASNULL,到达时间][char](10)COLLATEChinese_PRC_CI_ASNULL,

[总票数][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[剩余票数][varchar](50)COLLATEChinese_PRC_CI_ASNULL,CONSTRAINT[PK_Airplane]PRIMARYKEYCLUSTERED

[航班号]ASC

)WITH(PAD_INDEX=OFF,IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]

3、顾客操作

(1)注册(register)

INSERTINTO用户表(Username,psw,sex,ag,eulevel)VALUES(#Username,#psw,#sex,#age,#ulevel);

(2)注销(unregister)

DELETECustomer

WHERE(Username=#Username);

本系统涉及到的存储过程:

i+©dbc,CheckUser二3童着航班表

+旨

1+旨童看月户表i+©Ubo.航班号it©dbo.机型

i-i自dbc,g的堆i+自dbo.注册

1注册界面1

用户名1

密码

性别

S3

年龄

用户等级

管理员*

「注册

返回

这是注册界面,代码如下:

usingSystem;

usingSystem.Collections;

usingSystem.Configuration;

usingSystem.Data;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.HtmlControls;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Xml.Linq;

usingSystem.Data.SqlClient;

publicpartialclassDefault2:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

TextBox1.Focus();

}

protectedvoidButton2_Click(objectsender,EventArgse)

{Response.Redirect("Default.aspx");

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

stringAdd="注册";

stringconstr=ConfigurationManager.ConnectionStrings["sss"].ToString();

SqlConnectionconn=newSqlConnection();conn.ConnectionString=constr;if(conn.State!

=ConnectionState.Open){

conn.Open();

}

SqlCommandcmd=newSqlCommand(Add,conn);

cmd.CommandType=CommandType.StoredProcedure;//这是告诉程序这是执行存储过程

SqlParameterParameter1=newSqlParameter("@username",SqlDbType.Char,10);

SqlParameterParameter2=newSqlParameter("@psw",SqlDbType.Char,10);

SqlParameterParameter3=newSqlParameter("@sex",SqlDbType.Char,10);

SqlParameterParameter4=newSqlParameter("@age",SqlDbType.Char,10);

SqlParameterParameter5=newSqlParameter("@ulevel",SqlDbType.Char,10);Parameter1.Value=TextBox1.Text;

Parameter2.Value=TextBox2.Text;

Parameter3.Value=DropDownList1.Text;

Parameter4.Value=TextBox3.Text;

Parameter5.Value=DropDownList2.Text;

cmd.Parameters.Add(Parameter1);

cmd.Parameters.Add(Parameter2);

cmd.Parameters.Add(Parameter3);

cmd.Parameters.Add(Parameter4);

cmd.Parameters.Add(Parameter5);

DataTabletable=newDataTable();

SqlDataAdapteradapter=newSqlDataAdapter(cmd);

adapter.Fill(table);

conn.Close();

Response.Redirect("Default.aspx");

}

}

代码中引用了注册的存储过程:

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

GO

createproc[dbo].[注册]

@usernamechar(10),

@pswchar(10),

@sexchar(10),

@agechar(10),

@ulevelchar(10)

as

begin

insertinto用户表(username,psw,sex,age,ulevel)values(@username,@psw,@sex,@age,@ulevel)

end

GO

SETANSI_NULLSOFF

GO

SETQUOTED_IDENTIFIEROFF

GO

航班查询系织

loCialhost:

4B30上的网页显示:

用户容:

admin

用户轻丑密那逅戸号毁港=

隔]

用户等级:

用户・

注flfl

这是登录界面登录时必须选对用户等级,不然会报错,登录界面代码如下:

usingSystem;

usingSystem.Configuration;

usingSystem.Data;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.Ul.HtmIControls;

usingSystem.Web.Ul.WebControls;

usingSystem.Web.Ul.WebControls.WebParts;

usingSystem.Xml.Linq;

usingSystem.Data.SqlClient;

publicpartialclass_Default:

System.Web.Ul.Page

protectedvoidPage_Load(objectsender,EventArgse)

{

TextBox1.Focus();

}

protectedvoidButton2_Click(objectsender,EventArgse)

{

Response.Redirect("Default.aspx");

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

stringAdd="CheckUser";

stringconstr=ConfigurationManager.ConnectionStrings["sss"].ToString();

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=constr;

if(conn.State!

=ConnectionState.Open)

{

conn.Open();

}

SqlCommandcmd=newSqlCommand(Add,conn);cmd.CommandType=CommandType.StoredProcedure;

SqlParameterParameter1=newSqlParameter("@username",SqlDbType.Char,10);

SqlParameterParameter2=newSqlParameter("@psw",SqlDbType.Char,10);

SqlParameterParameter3=newSqlParameter("@ulevel",SqlDbType.Char,10);Parameter1.Value=TextBox1.Text;

Parameter2.Value=TextBox2.Text;

Parameter3.Value=DropDownList1.Text;cmd.Parameters.Add(Parameter1);cmd.Parameters.Add(Parameter2);cmd.Parameters.Add(Parameter3);DataTabletable=newDataTable();

SqlDataAdapteradapter=newSqlDataAdapter(cmd);

adapter.Fill(table);

SqlDataReaderdr=cmd.ExecuteReader();//调用executereade(r)方法得到dr对象

dr.Read();

if(dr.HasRows)//如果有返回记录存在

{

if(DropDownList1.Text=="管理员")

{

Session["pass"]="admin";Response.Redirect("manager.aspx");

}

else

{

Session["pass"]="guest";Response.Redirect("guest.aspx");

}

}else{

Response.Write("alert用户名或密码或用户等级错误!

’);");

return;

}

}

}代码中使用的登录的存储过程:

setANSI_NULLSONsetQUOTED_IDENTIFIERON

GO

ALTERPROCEDURE[dbo].[CheckUser]

@usernamechar(10),

@pswchar(10),

@ulevelchar(10)

AS

BEGIN

select*from用户表whereusername=@usernameandpsw=@pswandulevel=@ulevel

END

这呈管理员页面

航班号

机疊

航空售可

起飞城市到达城市

起飞时间

到达时何

忌票数

剌余祟数

123

123

123

123

123

123

123

123

123

CA1321

液音

国航

北京

广州

12172009

12172009

100

96

CA1324

液音

国航

北京

广州

12172009

12172009

1D0

96

CA1519

液音

国航

北京

挤南

12172009

12172009

100

100

CA42D9

国航

西安

12172009

12172009

100

100

CZ3162

南航

rfti

」匕京

12172009

12172009

100

100

CZ3206

南航

广州

西安

12172009

12172009

100

100

用户裏

(23427

空客3QQ

南航

广州

咸都

12172009

12172009

100

99

CZ6301

空容和0

閘航

沈BE

广州

12172009

12172009

100

100

Fill508

妻道

东肮

南厅,

沈阳

12172009

12172009

100

100

HU7303

麦道

东航

太原

眉门

12172009

12172009

100

100

NF81L1

液音

乘航

海庫

太原

12172009

12172009

1QQ

100

NU5104

空客3QQ

东航

上海

重庆

12172009

12172009

100

100

它遲駄班

KU5403'

空容和0

东航

12172009

12172009

100

99

管理员进去之后可以查询航班表,用户表和管理航班,对信息进行添加修改这里是通过拉控件方式做的,如下图:

通过拉FormView和SqlDataSource两个控件,用FormView绑定SqlDataSource,然后在

SqlDa

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 管理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1