版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
火车票查询系统实习报告PAGE摘要:随着时代的不断进步,人们出行次数增加,那么一个火车站怎样才能快捷高效的为乘客们服务变成了一个很重要的问题。伴随着计算机的普及,运用计算机进行数据的保存与管理已经成为一件再寻常不过的事情,因此建立一个火车票查询预订系统将会是一个很好的解决办法。一个火车票查询预订系统的设计可以使工作人员实现计算机管理,减轻工作量,并且可以节约人力和物力,从而使得火车票管理更加的便捷和高效。一个火车票查询预订系统应该有火车票的查询,添加或删除,管理员的管理等功能。关键字:火车票查询;火车票预订;管理员管理;便捷;高效
目录TOC\o"1-2"\h\z\u1课题综述 11.1课题来源 11.2程序所实现的功能 11.3软硬件运行环境及开发工具 12系统分析 12.1主要模块功能 12.2功能模块图 13系统设计 13.1数据库设计 13.2火车票信息处理对话框的设计 33.3火车票销售对话框的设计 错误!未定义书签。4代码编写 54.1命令按钮的过程代码添加方法 错误!未定义书签。4.2具体代码 15程序调试 35.1上机过程中出现的问题和解决方案 15.2程序的扩展方案 16程序运行界面 1PAGE7字段名称字段类型字段大小索引必须填写adminnum文本50有(无重复)否admincode文本50有(无重复)
否表3-3“Ticket”数据表的结构字段名称字段类型字段大小索引必须填写ID自动编号长整型有(有重复)trainnum文本50
有(有重复)否date文本50无否startpos文本50无否starttimedestinationreachtimehardlefthardcostSoftleftsoftcost日期/时间文本文本数字货币数字货币5050长整型长整型无无无无无无无否否否否否否3.2图书出版基本信息处理对话框的设计图书出版基本信息处理对话框的界面如下图所示:图3-1火车票查询信息对话框标签控件的属性如表3-4所示。表3-4
标签对象的基本属性ID标题内容Textbox3火车发车日期Textbox1火车发车地Textbox2火车目的地Radiobottom1软铺Radiobottom2硬座Datagridview1显示查询信息图3-2火车票预订信息对话框表3-6编辑框对象的基本属性Textbox1预订火车发车日期Textbox2火车出发地Textbox3火车目的地Textbox4火车车次Textbox5预订者联系电话Textbox6E_mailTextbox7真实姓名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;elseinsertcomm.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;elseupdatecomm.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北京:机械工程出版社.20012孙晓非等编著C#程序设计基础教程与实验指导北京:清华大学出版社.20083王小科等编著C#程序设计标准教程北京:人民邮电出版社.20094刘乃丽等编著ASP.NET2.0网络开发详解北京:电子工业出版社.20085谭桂华等编著VisualC#高级编程范例北京:清华大学出版社.20046张立等编著C#2.0宝典北京:电子工业出版社.2007附录心得体会学号07057335姓名吴仁克对于本次软件实习,多少有些收获。这次软件实习做的系统是用C#语言编写的。之前没有接触过C#,但有接触过C++和VB。由于需要,特地借了几本书,其中一本《零基础学VisualC#2005》学习了一下,了解到C#的控件功能与VB相似,书中前面的基础知识与C++的内容有些相似。同时还看了书后的几个实例编程,对于编程我是比较薄弱的,很少投入这方面学习,另外很少动手。这次实习我主要是做简单类的窗体,比如多个窗体的分配及弹出界面问题,在编写过程中遇到问题查阅资料。从没有碰过C#到略懂一些已经是质的飞跃了,但还要认真研究学习。在设计系统首先要对整体框架进行构思,对每一个功能进行实现这个很重要。并且最重要的是数据库的基本操作,包括Connection、Command、Datareader、Dataset和Dataadapter对象,添加数据、修改数据、删除数据和查询数据,还有就是DATAGRIDVIEW控件的使用。这个系统是用ACCESS建立连接数据库,了解到了一些关键的操作语句,C#中有专门的语句对数据库进行操作。因此对数据库有初步的认识。在这里面,让我感受最深的还是一种自学精神,多思考,多发现问题,然后经过自己努力汲取新的知识或者询问老师同学来解决问题,多和同学交流问题。对于这样一种学习途径,我觉得收益颇深。总之,通过本次软件实习,知道要多动手解决问题,不要想一步把所有的问题都解决,要需循序渐进,把理论知识运用要实践中;同时为以后的软件系统设计打下基础,让自己更好地学习编程和软件设计。心得体会在完成这次短学期的任务——用c#编写一个winform模式的《火车票查询预订系统》之后,这个短学期也结束了。在这期间,通过实践编程,我对C#以及数据库的一些操作有了一个更加具体的了解,在大二下学期开学时,便已看过C#和数据库操作方面的书籍,但一直没有付之于实践,起先觉得这个很简单,但真当实践时,却遇到了不少问题,包括不同窗体之间的数据传输,数据库与窗体间的数据传输的问题等。有些问题让我想了整个下午都想不出为什么,最后发现原来是自己的编程习惯不好或者是有一些语法规则是书上没有提到,需要自己去摸索的。当然碰壁也是一个学习的过程,每次当我遇到问题或者我不懂的地方,我都会去翻看C#和数据库方面的书籍和去GOOGLE搜索我所遇到问题的解决方法,而在这个过程中,我学到了很多其他的东西,而且对我所遇到的问题方面的知道有了更深一步的了解。每次解决一个问题或者学到一个我个人觉得有价值的东西,我都会很兴奋。这次短学期实践的过程,让我体会到了编程时所需要的耐心、决心和良好的编程习惯。以前编写的都是一些单个文件的简单代码,不需要考虑文件与文件之间的关系,因此编程习惯没有养好,变量乱定义等毛病一直都有。与此同时,这是第一个和同学一起合作编写的软件程序,虽说各人能力不同,但分工明确,齐心协力完成了这项任务,第一次体会到了团队编程的精神。尽管完成了这次短学期任务,但还是有遗憾,本打算实现客户端与服务器的链接,但由于时间及小组成员对于C#和数据库的掌握能力各不相同,因此没有能实现这一目标。但在短学期结束后的时间里,我会继续实践,完成这一目标。学号07057336姓名徐志骏心得体会我们做的是一个火车票查询管理系统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论