火車票查詢系統(tǒng)實習報告_第1頁
火車票查詢系統(tǒng)實習報告_第2頁
火車票查詢系統(tǒng)實習報告_第3頁
火車票查詢系統(tǒng)實習報告_第4頁
火車票查詢系統(tǒng)實習報告_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

火車票查詢系統(tǒng)實習報告PAGE摘要:隨著時代的不斷進步,人們出行次數(shù)增加,那么一個火車站怎樣才能快捷高效的為乘客們服務變成了一個很重要的問題。伴隨著計算機的普及,運用計算機進行數(shù)據(jù)的保存與管理已經(jīng)成為一件再尋常不過的事情,因此建立一個火車票查詢預訂系統(tǒng)將會是一個很好的解決辦法。一個火車票查詢預訂系統(tǒng)的設計可以使工作人員實現(xiàn)計算機管理,減輕工作量,并且可以節(jié)約人力和物力,從而使得火車票管理更加的便捷和高效。一個火車票查詢預訂系統(tǒng)應該有火車票的查詢,添加或刪除,管理員的管理等功能。關鍵字:火車票查詢;火車票預訂;管理員管理;便捷;高效

目錄TOC\o"1-2"\h\z\u1課題綜述 11.1課題來源 11.2程序所實現(xiàn)的功能 11.3軟硬件運行環(huán)境及開發(fā)工具 12系統(tǒng)分析 12.1主要模塊功能 12.2功能模塊圖 13系統(tǒng)設計 13.1數(shù)據(jù)庫設計 13.2火車票信息處理對話框的設計 33.3火車票銷售對話框的設計 錯誤!未定義書簽。4代碼編寫 54.1命令按鈕的過程代碼添加方法 錯誤!未定義書簽。4.2具體代碼 15程序調(diào)試 35.1上機過程中出現(xiàn)的問題和解決方案 15.2程序的擴展方案 16程序運行界面 1PAGE7字段名稱字段類型字段大小索引必須填寫adminnum文本50有(無重復)否admincode文本50有(無重復)

否表3-3“Ticket”數(shù)據(jù)表的結構字段名稱字段類型字段大小索引必須填寫ID自動編號長整型有(有重復)trainnum文本50

有(有重復)否date文本50無否startpos文本50無否starttimedestinationreachtimehardlefthardcostSoftleftsoftcost日期/時間文本文本數(shù)字貨幣數(shù)字貨幣5050長整型長整型無無無無無無無否否否否否否3.2圖書出版基本信息處理對話框的設計圖書出版基本信息處理對話框的界面如下圖所示:圖3-1火車票查詢信息對話框標簽控件的屬性如表3-4所示。表3-4

標簽對象的基本屬性ID標題內(nèi)容Textbox3火車發(fā)車日期Textbox1火車發(fā)車地Textbox2火車目的地Radiobottom1軟鋪Radiobottom2硬座Datagridview1顯示查詢信息圖3-2火車票預訂信息對話框表3-6編輯框對象的基本屬性Textbox1預訂火車發(fā)車日期Textbox2火車出發(fā)地Textbox3火車目的地Textbox4火車車次Textbox5預訂者聯(lián)系電話Textbox6E_mailTextbox7真實姓名Textbox8身份證Combobox1預訂火車票類型Radiobottom1軟鋪Radiobottom2硬座圖3-3火車票后臺管理信息對話框表3-7編輯框對象的基本屬性Datagridview1顯示預訂信息Bottom1刪除預訂信息Bottom2關閉Toolstrip1功能對話框按鈕Toolstripbottom1打開添加車次信息對話框Toolstripbottom2打開修改車次信息對話框Toolstripbottom3打開修改管理員密碼對話框圖3-4火車票后臺管理信息對話框表3-8編輯框對象的基本屬性Textbox1預訂火車發(fā)車日期Textbox2火車車次Textbox3火車發(fā)車地Textbox4火車軟鋪票價Textbox5火車目的地Textbox6火車硬座票價Textbox7軟鋪數(shù)量Textbox8發(fā)車時間Textbox9硬座數(shù)量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,"請輸入發(fā)車地點!","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程序調(diào)試5.1上機過程中出現(xiàn)的問題和解決方案(1)在編寫修改火車票信息的代碼中,通過對datagridview1中的數(shù)據(jù)操作,從而修改數(shù)據(jù)庫中的記錄時,程序出現(xiàn)“標準表達式對應數(shù)據(jù)類型有誤”,通過網(wǎng)上搜索和自己反復修改,最后程序正確。(2)對于不同窗體間的數(shù)據(jù)傳輸時所運用的不同方法進行嘗試,出現(xiàn)錯誤后,查閱書籍解決。5.2程序的擴展方案(1)程序界面過于單調(diào),可以通過更改背景顏色或添加背景圖片進行解決。(2)添加服務器與客戶端相連模塊。(3)增加輸入格式檢測,放置輸入不同數(shù)據(jù)類型。6程序運行界面在打開“圖書出版管理系統(tǒng).exe”后,將出現(xiàn)下圖所示界面:圖6-1主窗體點擊進入查詢系統(tǒng),即出現(xiàn)火車票信息查詢界面:圖6-2火車票信息查詢圖6-3火車票預定界面當點擊“確定并提交預訂信息”選擇框時,彈出“確認信息對”話框:圖6-4預訂確認信息對話框圖6-5后臺管理界面參考文獻1張慶華等編著零基礎學VisualC#2005北京:機械工程出版社.20012孫曉非等編著C#程序設計基礎教程與實驗指導北京:清華大學出版社.20083王小科等編著C#程序設計標準教程北京:人民郵電出版社.20094劉乃麗等編著ASP.NET2.0網(wǎng)絡開發(fā)詳解北京:電子工業(yè)出版社.20085譚桂華等編著VisualC#高級編程范例北京:清華大學出版社.20046張立等編著C#2.0寶典北京:電子工業(yè)出版社.2007附錄心得體會學號07057335姓名吳仁克對于本次軟件實習,多少有些收獲。這次軟件實習做的系統(tǒng)是用C#語言編寫的。之前沒有接觸過C#,但有接觸過C++和VB。由于需要,特地借了幾本書,其中一本《零基礎學VisualC#2005》學習了一下,了解到C#的控件功能與VB相似,書中前面的基礎知識與C++的內(nèi)容有些相似。同時還看了書后的幾個實例編程,對于編程我是比較薄弱的,很少投入這方面學習,另外很少動手。這次實習我主要是做簡單類的窗體,比如多個窗體的分配及彈出界面問題,在編寫過程中遇到問題查閱資料。從沒有碰過C#到略懂一些已經(jīng)是質(zhì)的飛躍了,但還要認真研究學習。在設計系統(tǒng)首先要對整體框架進行構思,對每一個功能進行實現(xiàn)這個很重要。并且最重要的是數(shù)據(jù)庫的基本操作,包括Connection、Command、Datareader、Dataset和Dataadapter對象,添加數(shù)據(jù)、修改數(shù)據(jù)、刪除數(shù)據(jù)和查詢數(shù)據(jù),還有就是DATAGRIDVIEW控件的使用。這個系統(tǒng)是用ACCESS建立連接數(shù)據(jù)庫,了解到了一些關鍵的操作語句,C#中有專門的語句對數(shù)據(jù)庫進行操作。因此對數(shù)據(jù)庫有初步的認識。在這里面,讓我感受最深的還是一種自學精神,多思考,多發(fā)現(xiàn)問題,然后經(jīng)過自己努力汲取新的知識或者詢問老師同學來解決問題,多和同學交流問題。對于這樣一種學習途徑,我覺得收益頗深??傊ㄟ^本次軟件實習,知道要多動手解決問題,不要想一步把所有的問題都解決,要需循序漸進,把理論知識運用要實踐中;同時為以后的軟件系統(tǒng)設計打下基礎,讓自己更好地學習編程和軟件設計。心得體會在完成這次短學期的任務——用c#編寫一個winform模式的《火車票查詢預訂系統(tǒng)》之后,這個短學期也結束了。在這期間,通過實踐編程,我對C#以及數(shù)據(jù)庫的一些操作有了一個更加具體的了解,在大二下學期開學時,便已看過C#和數(shù)據(jù)庫操作方面的書籍,但一直沒有付之于實踐,起先覺得這個很簡單,但真當實踐時,卻遇到了不少問題,包括不同窗體之間的數(shù)據(jù)傳輸,數(shù)據(jù)庫與窗體間的數(shù)據(jù)傳輸?shù)膯栴}等。有些問題讓我想了整個下午都想不出為什么,最后發(fā)現(xiàn)原來是自己的編程習慣不好或者是有一些語法規(guī)則是書上沒有提到,需要自己去摸索的。當然碰壁也是一個學習的過程,每次當我遇到問題或者我不懂的地方,我都會去翻看C#和數(shù)據(jù)庫方面的書籍和去GOOGLE搜索我所遇到問題的解決方法,而在這個過程中,我學到了很多其他的東西,而且對我所遇到的問題方面的知道有了更深一步的了解。每次解決一個問題或者學到一個我個人覺得有價值的東西,我都會很興奮。這次短學期實踐的過程,讓我體會到了編程時所需要的耐心、決心和良好的編程習慣。以前編寫的都是一些單個文件的簡單代碼,不需要考慮文件與文件之間的關系,因此編程習慣沒有養(yǎng)好,變量亂定義等毛病一直都有。與此同時,這是第一個和同學一起合作編寫的軟件程序,雖說各人能力不同,但分工明確,齊心協(xié)力完成了這項任務,第一次體會到了團隊編程的精神。盡管完成了這次短學期任務,但還是有遺憾,本打算實現(xiàn)客戶端與服務器的鏈接,但由于時間及小組成員對于C#和數(shù)據(jù)庫的掌握能力各不相同,因此沒有能實現(xiàn)這一目標。但在短學期結束后的時間里,我會繼續(xù)實踐,完成這一目標。學號07057336姓名徐志駿心得體會我們做的是一個火車票查詢管理系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論