火车票查询系统实习报告.docx

上传人:b****6 文档编号:15755238 上传时间:2023-07-07 格式:DOCX 页数:23 大小:387.09KB
下载 相关 举报
火车票查询系统实习报告.docx_第1页
第1页 / 共23页
火车票查询系统实习报告.docx_第2页
第2页 / 共23页
火车票查询系统实习报告.docx_第3页
第3页 / 共23页
火车票查询系统实习报告.docx_第4页
第4页 / 共23页
火车票查询系统实习报告.docx_第5页
第5页 / 共23页
火车票查询系统实习报告.docx_第6页
第6页 / 共23页
火车票查询系统实习报告.docx_第7页
第7页 / 共23页
火车票查询系统实习报告.docx_第8页
第8页 / 共23页
火车票查询系统实习报告.docx_第9页
第9页 / 共23页
火车票查询系统实习报告.docx_第10页
第10页 / 共23页
火车票查询系统实习报告.docx_第11页
第11页 / 共23页
火车票查询系统实习报告.docx_第12页
第12页 / 共23页
火车票查询系统实习报告.docx_第13页
第13页 / 共23页
火车票查询系统实习报告.docx_第14页
第14页 / 共23页
火车票查询系统实习报告.docx_第15页
第15页 / 共23页
火车票查询系统实习报告.docx_第16页
第16页 / 共23页
火车票查询系统实习报告.docx_第17页
第17页 / 共23页
火车票查询系统实习报告.docx_第18页
第18页 / 共23页
火车票查询系统实习报告.docx_第19页
第19页 / 共23页
火车票查询系统实习报告.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

火车票查询系统实习报告.docx

《火车票查询系统实习报告.docx》由会员分享,可在线阅读,更多相关《火车票查询系统实习报告.docx(23页珍藏版)》请在冰点文库上搜索。

火车票查询系统实习报告.docx

火车票查询系统实习报告

摘要:

随着时代的不断进步,人们出行次数增加,那么一个火车站怎样才能快捷高效的为乘客们服务变成了一个很重要的问题。

伴随着计算机的普及,运用计算机进行数据的保存与管理已经成为一件再寻常不过的事情,因此建立一个火车票查询预订系统将会是一个很好的解决办法。

一个火车票查询预订系统的设计可以使工作人员实现计算机管理,减轻工作量,并且可以节约人力和物力,从而使得火车票管理更加的便捷和高效。

一个火车票查询预订系统应该有火车票的查询,添加或删除,管理员的管理等功能。

 

关键字:

火车票查询;火车票预订;管理员管理;便捷;高效

 

1课题综述

1.1课题来源

本次软件实习将用C#制作一个火车票查询预订系统,具有一般系统的数据处理功能,如数据录入、增加、修改、删除等。

1.2程序所实现的功能

本系统通过C#Winforms技术完成的功能如下:

(1)可以实现火车票信息的增加、删除。

(2)可以实现火车票的基本信息的浏览。

(3)可以实现火车票的预订及预订信息的删除、修改(4)管理员登录密码的修改

1.3软硬件运行环境及开发工具

本次软件设计的运行环境:

WindowsXP操作系统,MicrosoftVisualStudio2005以上编译环境。

开发工具为C#和Access。

C#概述:

MicrosoftVisualC#2005(读作C#)是一种编程语言,它是为生成在.NETFramework上运行的多种应用程序而设计的。

C#简单、功能强大、类型安全,而且是面向对象的。

C#凭借它的许多创新,在保持C样式语言的表示形式和优美的同时,实现了应用程序的快速开发。

VisualStudio支持VisualC#,这是通过功能齐全的代码编辑器、项目模板、设计器、代码向导、功能强大且易于使用的调试器以及其他工具实现的。

通过.NETFramework类库,可以访问多种操作系统服务和其他有用的精心设计的类,这些类可显著加快开发周期。

Access概述:

Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。

它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。

2系统分析

2.1主要模块功能

(1)增加火车票记录模块:

用于将新的火车票信息添加到火车票基本信息表中。

(2)删除火车票记录模块:

用于删除火车票基本信息表中的火车票信息。

(3)刷新火车票记录模块:

增加记录和删除记录完成后点次按钮更新。

(4)增加火车票预定记录模块:

用于预订火车票信息。

(5)删除火车票预定记录模块:

用于删除预订火车票信息。

(6)修改密码模块:

用于修改后台管理员登录密码信息。

(7)查询火车票模块:

用于客户查询所需的火车票信息。

2.2功能模块图

该系统的功能模块图如下图所示:

图2-1模块图

3系统设计

3.1数据库设计

创建一个“图书出版管理系统”数据库,含有三个数据表:

“出版图书基本信息”、“图书分类”、“图书出售信息”。

具体格式如下表:

表3-1 “Book”数据表结构

字段名称

字段类型

字段大小

索引

必须填写

name

文本

50

phone

文本

20

 无

shenfen

文本

50

 无

trainnum

文本

50

 有(有重复)

neednum

数字

长整型

 有(有重复)

hard

是/否

是/否

 无

soft

是/否

是/否

 无

booktime

日期/时间

日期/时间

 无

ID

自动编号

自动编号

 有(有重复)

表3-2“entry”数据表的结构

字段名称

字段类型

字段大小

索引

必须填写

adminnum

文本

50

有(无重复)

admincode

文本

50

有(无重复) 

表3-3“Ticket”数据表的结构

字段名称

字段类型

字段大小

索引

必须填写

ID

自动编号

长整型

有(有重复)

trainnum

文本

50

 有(有重复)

date

文本

50

startpos

文本

50

starttime

destination

reachtime

hardleft

hardcost

Softleft

softcost

日期/时间

文本

文本

数字

货币

数字

货币

50

50

长整型

长整型

3.2图书出版基本信息处理对话框的设计

图书出版基本信息处理对话框的界面如下图所示:

图3-1火车票查询信息对话框

标签控件的属性如表3-4所示。

表3-4 标签对象的基本属性

ID

标题内容

Textbox3

火车发车日期

Textbox1

火车发车地

Textbox2

火车目的地

Radiobottom1

软铺

Radiobottom2

硬座

Datagridview1

显示查询信息

图3-2火车票预订信息对话框

表3-6编辑框对象的基本属性

Textbox1

预订火车发车日期

Textbox2

火车出发地

Textbox3

火车目的地

Textbox4

火车车次

Textbox5

预订者联系电话

Textbox6

E_mail

Textbox7

真实姓名

Textbox8

身份证

Combobox1

预订火车票类型

Radiobottom1

软铺

Radiobottom2

硬座

图3-3火车票后台管理信息对话框

表3-7编辑框对象的基本属性

Datagridview1

显示预订信息

Bottom1

删除预订信息

Bottom2

关闭

Toolstrip1

功能对话框按钮

Toolstripbottom1

打开添加车次信息对话框

Toolstripbottom2

打开修改车次信息对话框

Toolstripbottom3

打开修改管理员密码对话框

图3-4火车票后台管理信息对话框

表3-8编辑框对象的基本属性

Textbox1

预订火车发车日期

Textbox2

火车车次

Textbox3

火车发车地

Textbox4

火车软铺票价

Textbox5

火车目的地

Textbox6

火车硬座票价

Textbox7

软铺数量

Textbox8

发车时间

Textbox9

硬座数量

Textbox10

到站时间

Bottom1

确定提交

图3-5火车票后台管理信息对话框

表3-9编辑框对象的基本属性

Datagridview1

显示火车票信息

Bottom1

提交修改信息

Bottom2

删除所选择的记录

Bottom3

关闭

图3-6火车票后台管理信息对话框

表3-9编辑框对象的基本属性

textbox1

输入登录帐号

textbox1

输入原登录密码

textbox1

输入新登录密码

textbox1

再次输入新登录密码

Bottom1

确定提交修改信息

Bottom2

关闭对话框

 

4代码编写

4.1具体代码

“查询火车票记录”命令按钮的过程代码代码:

privatevoidcheck_Click(objectsender,EventArgse)

{

if(textBox3.Text==string.Empty)

{

MessageBox.Show(this,"请输入日期时间!

","PhoenixInformation:

",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

return;

}

if(textBox1.Text==string.Empty)

{

MessageBox.Show(this,"请输入发车地点!

","PhoenixInformation:

",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

return;

}

if(textBox2.Text==string.Empty)

{

MessageBox.Show(this,"请输入目的点!

","PhoenixInformation:

",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

return;

}

if(radioButton1.Checked==false&&radioButton2.Checked==false)

{

MessageBox.Show(this,"请选择车票类型!

","PhoenixInformation:

",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

return;

}

if(i>0)

{

this.dataGridView1.Columns[7].Visible=true;

this.dataGridView1.Columns[8].Visible=true;

this.dataGridView1.Columns[9].Visible=true;

this.dataGridView1.Columns[10].Visible=true;

}

i++;

Stringconnstring=@"provider=Microsoft.Jet.OLEDB.4.0;DataSource=db1.mdb";

OleDbConnectionconn=newOleDbConnection(connstring);

conn.Open();

Stringcommstring="select*fromTicketwheredate='"+this.textBox3.Text+"'andstartpos='"+this.textBox1.Text+"'anddestination='"+this.textBox2.Text+"'";

OleDbCommandcommd=newOleDbCommand(commstring,conn);

OleDbDataAdaptermyadap=newOleDbDataAdapter();

myadap.SelectCommand=commd;

DataSetmyset=newDataSet();

myadap.Fill(myset,"Ticket");

this.dataGridView1.DataSource=myset.Tables["Ticket"];

conn.Close();

if(this.radioButton1.Checked==false)//显示选择的车票类型及价格

{

this.dataGridView1.Columns[9].Visible=false;

this.dataGridView1.Columns[10].Visible=false;

}

else

{

this.dataGridView1.Columns[7].Visible=false;

this.dataGridView1.Columns[8].Visible=false;

}

}

“预定火车票”命令按钮的过程代码如下所示:

privatevoidbookdata_insert()

{

intticketnumber=Convert.ToInt32(this.label6.Text);

stringdatastring=@"provider=Microsoft.Jet.OLEDB.4.0;DataSource=db1.mdb";

Stringdatastring1="insertintoBook(booktime,name,phone,shenfen,trainnum,neednum,hard,soft)values('"+this.label1.Text+"','"+this.label9.Text+"','"+this.label7.Text+"','"+this.label19.Text+"','"+this.label2.Text+"','"+this.label6.Text+"','-1','0')";

Stringdatastring2="insertintoBook(booktime,name,phone,shenfen,trainnum,neednum,hard,soft)values('"+this.label1.Text+"','"+this.label9.Text+"','"+this.label7.Text+"','"+this.label19.Text+"','"+this.label2.Text+"','"+this.label6.Text+"','0','-1')";

OleDbConnectiondata_insert=newOleDbConnection(datastring);

data_insert.Open();

OleDbCommandinsertcomm=newOleDbCommand();

insertcomm.Connection=data_insert;

if(type==false)

insertcomm.CommandText=datastring1;

else

insertcomm.CommandText=datastring2;

insertcomm.ExecuteNonQuery();

Stringdatastring3="updateTicketsethardleft=hardleft-'"+boBox1.Text+"'wheretrainnum='"+chuandi.textBox5.Text+"'";

Stringdatastring4="updateTicketsetsoftleft=softleft-'"+boBox1.Text+"'wheretrainnum='"+chuandi.textBox5.Text+"'";

OleDbCommandupdatecomm=newOleDbCommand();

updatecomm.Connection=data_insert;

if(type==false)

updatecomm.CommandText=datastring3;

else

updatecomm.CommandText=datastring4;

updatecomm.ExecuteNonQuery();

data_insert.Close();

}

“修改火车票记录”命令按钮的过程代码如下所示:

privatevoidbutton1_Click(objectsender,EventArgse)

{

stringstr=this.dataGridView1.CurrentRow.Cells["Column1"].Value.ToString();

Stringconnstring=@"provider=Microsoft.Jet.OLEDB.4.0;DataSource=db1.mdb";

OleDbConnectionconn=newOleDbConnection(connstring);

conn.Open();

Stringcommstring="updateTicketsettrainnum='"+this.dataGridView1.CurrentRow.Cells["Column2"].Value+"',[date]='"+this.dataGridView1.CurrentRow.Cells["Column3"].Value+"',startpos='"+this.dataGridView1.CurrentRow.Cells["Column4"].Value+"',starttime='"+this.dataGridView1.CurrentRow.Cells["Column5"].Value+"',destination='"+this.dataGridView1.CurrentRow.Cells["Column6"].Value+"',reachtime='"+this.dataGridView1.CurrentRow.Cells["Column7"].Value+"',hardleft='"+this.dataGridView1.CurrentRow.Cells["Column8"].Value+"',hardcost='"+this.dataGridView1.CurrentRow.Cells["Column9"].Value+"',softleft='"+this.dataGridView1.CurrentRow.Cells["Column10"].Value+"',softcost='"+this.dataGridView1.CurrentRow.Cells["Column11"].Value+"'whereID="+str;

OleDbCommandcommd=newOleDbCommand(commstring,conn);

commd.ExecuteNonQuery();

conn.Close();

dataconn();

MessageBox.Show("修改成功!

");

}

“删除预订记录”按钮的过程代码如下所示:

privatevoidbutton2_Click(objectsender,EventArgse)

{

stringstr=this.dataGridView1.CurrentRow.Cells["Column1"].Value.ToString();

MessageBox.Show(this,"确定删除该条预订信息?

","PhoenixInformation:

",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

Stringconnstring=@"provider=Microsoft.Jet.OLEDB.4.0;DataSource=db1.mdb";

OleDbConnectionconn=newOleDbConnection(connstring);

conn.Open();

Stringcommstring="deletefromBookwhereID="+str;

OleDbCommandcommd=newOleDbCommand(commstring,conn);

commd.ExecuteNonQuery();

conn.Close();

preseant_data();

5程序调试

5.1上机过程中出现的问题和解决方案

(1)在编写修改火车票信息的代码中,通过对datagridview1中的数据操作,从而修改数据库中的记录时,程序出现“标准表达式对应数据类型有误”,通过网上搜索和自己反复修改,最后程序正确。

(2)对于不同窗体间的数据传输时所运用的不同方法进行尝试,出现错误后,查阅书籍解决。

5.2程序的扩展方案

(1)程序界面过于单调,可以通过更改背景颜色或添加背景图片进行解决。

(2)添加服务器与客户端相连模块。

(3)增加输入格式检测,放置输入不同数据类型。

6程序运行界面

在打开“图书出版管理系统.exe”后,将出现下图所示界面:

图6-1主窗体

点击进入查询系统,即出现火车票信息查询界面:

图6-2火车票信息查询

图6-3火车票预定界面

当点击“确定并提交预订信息”选择框时,弹出“确认信息对”话框:

图6-4预订确认信息对话框

图6-5后台管理界面

参考文献

1张庆华等编著零基础学VisualC#2005北京:

机械工程出版社.2001

2孙晓非等编著C#程序设计基础教程与实验指导北京:

清华大学出版社.2008

3王小科等编著C#程序设计标准教程北京:

人民邮电出版社.2009

4刘乃丽等编著ASP.NET2.0网络开发详解北京:

电子工业出版社.2008

5谭桂华等编著VisualC#高级编程范例北京:

清华大学出版社.2004

6张立等编著C#2.0宝典北京:

电子工业出版社.2007

附录

心得体会

学号07057335姓名吴仁克

对于本次软件实习,多少有些收获。

这次软件实习做的系统是用C#语言编写的。

之前没有接触过C#,但有接触过C++和VB。

由于需要,特地借了几本书,其中一本《零基础学VisualC#2005》学习了一下,了解到C#的控件功能与VB相似,书中前面的基础知识与C++的内容有些相似。

同时还看了书后的几个实例编程,对于编程我是比较薄弱的,很少投入这方面学习,另外很少动手。

这次实习我主要是做简单类的窗体,比如多个窗体的分配及弹出界面问题,在编写过程中遇到问题查阅资料。

从没有碰过C#到略懂一些已经是质的飞跃了,但还要认真研究学习。

在设计系统首先要对整体框架进行构思,对每一个功能进行实现这个很重要。

并且最重要的是数据库的基本操作,包括Connection、Command、Datareader、Dataset和Dataadapter对象,添加数据、修改数据、删除数据和查询数据,还有就是DATAGRIDVIEW控件的使用。

这个系统是用ACCESS建立连接数据库,了解到了一些关键的操作语句,C#中有专门的语句对数据库进行操作。

因此对数据库有初步的认识。

在这里面,让我感受最深的还是一种自学精神,多思考,多发现问题,然后经过自己努力汲取新的知识或者询问老师同学来解决问题,多和同学交流问题。

对于这样一种学习途径,我觉得收益颇深。

总之,通过

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2