課程設(shè)計報告-正文參考模板_第1頁
課程設(shè)計報告-正文參考模板_第2頁
課程設(shè)計報告-正文參考模板_第3頁
課程設(shè)計報告-正文參考模板_第4頁
課程設(shè)計報告-正文參考模板_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上目 錄1 前言學(xué)生宿舍管理系統(tǒng)對于一個學(xué)校來說是必不可少的組成部分。目前好多學(xué)校還停留在宿舍管理人員手工記錄數(shù)據(jù)的最初階段,手工記錄對于規(guī)模小的學(xué)校來說還勉強(qiáng)可以接受,但對于學(xué)生信息量比較龐大,需要記錄存檔的數(shù)據(jù)比較多的高校來說,人工記錄是相當(dāng)麻煩的。而且當(dāng)查找某條記錄時,由于數(shù)據(jù)量龐大,還只能靠人工去一條條的查找,這樣不但麻煩還浪費(fèi)了許多時間,效率也比較低。當(dāng)今社會是飛速進(jìn)步的世界,原始的記錄方式已經(jīng)被社會所淘汰了,計算機(jī)化管理正是適應(yīng)時代的產(chǎn)物。信息世界永遠(yuǎn)不會是一個平靜的世界,當(dāng)一種技術(shù)不能滿足需求時,就會有新的技術(shù)誕生并取代舊技術(shù)。21世紀(jì)的今天,信息社會占著

2、主流地位,計算機(jī)在各行各業(yè)中的運(yùn)用已經(jīng)得到普及,自動化、信息化的管理越來越廣泛應(yīng)用于各個領(lǐng)域。我們針對如此,設(shè)計了一套學(xué)生宿舍管理系統(tǒng)。學(xué)生宿舍管理系統(tǒng)采用的是計算機(jī)化管理,系統(tǒng)做的盡量人性化,使用者會感到操作非常方便,管理人員需要做的就是將數(shù)據(jù)輸入到系統(tǒng)的數(shù)據(jù)庫中去。由于數(shù)據(jù)庫存儲容量相當(dāng)大,而且比較穩(wěn)定,適合較長時間的保存,也不容易丟失。這無疑是為信息存儲量比較大的學(xué)校提供了一個方便、快捷的操作方式。本系統(tǒng)具有運(yùn)行速度快、安全性高、穩(wěn)定性好的優(yōu)點(diǎn),并且具備完善的報表生成、修改功能,能夠快速的查詢學(xué)校所需的住宿信息。2 需求分析2.1 要求1開發(fā)環(huán)境要求:Turbo C 3.0。2提交課程設(shè)

3、計報告一份,包括以下內(nèi)容:(1)系統(tǒng)分析:包括設(shè)計題目、設(shè)計內(nèi)容以及系統(tǒng)功能需求分析;(2)系統(tǒng)設(shè)計:包括總體設(shè)計(主要功能模塊的劃分)及詳細(xì)設(shè)計(各功能模塊的算法設(shè)計以及對應(yīng)的流程圖);(3)系統(tǒng)實現(xiàn):包括使用的所有變量、自定義函數(shù)、結(jié)構(gòu)體的說明,以及完整源程序清單,關(guān)鍵代碼應(yīng)加注釋。(4)系統(tǒng)運(yùn)行:包括系統(tǒng)操作使用的簡單說明,使用測試數(shù)據(jù)運(yùn)行的結(jié)果。(5)總結(jié)。包括課程設(shè)計過程中的學(xué)習(xí)體會與收獲,出現(xiàn)的問題和解決的方法,沒有完成的部分及原因,對C語言和本次課程設(shè)計的認(rèn)識以及自己的建議等內(nèi)容。2.2 任務(wù)1進(jìn)行需求分析,將系統(tǒng)劃分為多個模塊;2為每個模塊設(shè)計算法及流程;3編寫代碼實現(xiàn)各模塊功

4、能;4運(yùn)行調(diào)試程序;5撰寫課程設(shè)計報告。2.3 運(yùn)行環(huán)境(1)WINDOWS2000/XP系統(tǒng)(2)Visual C+ 6.0編譯環(huán)境或TC編譯環(huán)境2.4 開發(fā)工具C語言3 分析和設(shè)計3.1系統(tǒng)分析及設(shè)計思路按學(xué)號進(jìn)行查詢、按姓名進(jìn)行查詢、按班級查詢、按寢室號查詢這四個功能模塊在具體編程實現(xiàn)上基本上是一樣的。因此我們僅以按姓名進(jìn)行查詢?yōu)槔齺碚f明一下這四個功能模塊的詳細(xì)實現(xiàn)過程。開始輸入姓名(學(xué)號、班級、宿舍、)N判斷條件?顯示查詢結(jié)果 Y結(jié)束圖3.9 信息查詢流程圖1.按學(xué)號進(jìn)行查詢圖3.10 信息查詢界面設(shè)計思想:按學(xué)號查詢是具體的查詢某學(xué)生的詳細(xì)信息,包括學(xué)生的基本信息及其住宿情況。在需要

5、調(diào)查學(xué)生的詳細(xì)情況時,可以采用該功能來實現(xiàn)。具體實現(xiàn):(1).首先通過TADOQuery控件實現(xiàn)數(shù)據(jù)庫和該功能模塊的關(guān)聯(lián),再通過TDatasourse實現(xiàn)學(xué)生信息表(Student)和TDBGrid的關(guān)聯(lián),把學(xué)生信息顯示在下面的表格中。(2).其次我還為窗體添加了一個TDBNavigator控件,可以實現(xiàn)數(shù)據(jù)的最上一條、上一條、下一條、最下一條瀏覽查看。當(dāng)然像按學(xué)號來查詢的話也許用不到該控件,但要是按班級查詢或姓名等其他查詢,這個控件是非常有用的。因為通過班級或姓名查出來的學(xué)生信息數(shù)據(jù)量會非常大,所以需要通過該按鈕來方便、快捷的查看。(3).在按學(xué)號查詢時首先要通過編程判斷一下,數(shù)據(jù)庫的學(xué)生信

6、息表中是否存在該編號的學(xué)生,如果沒有系統(tǒng)會提醒你學(xué)號不存在是不是輸入錯誤,檢查一下再重新輸入,所以只有存在學(xué)號才能進(jìn)行查詢。(4).上述完成之后,輸入所查詢的學(xué)號,那么所需學(xué)生信息就會在下面表格中顯示出來了。上圖所顯示的是所有學(xué)生信息情況。2.按姓名進(jìn)行查詢設(shè)計思想:按學(xué)生姓名實現(xiàn)的查詢,雖然這樣查出來的學(xué)生有可能不止一名,但在有些情況下(比如家人、朋友來訪時,只記得學(xué)生姓名,在不清楚其學(xué)號、宿舍號的情況下,可以通過學(xué)生信息中的其它信息確定所要找的學(xué)生)可以調(diào)用此功能來實現(xiàn)。3.按班級進(jìn)行查詢設(shè)計思想:實現(xiàn)某個班級所有學(xué)生基本信息及住宿情況的查詢。通過該功能模塊我們可以統(tǒng)計某個班級的宿舍分配情

7、況,這個班級的學(xué)生都住在哪些寢室中。4.按寢室號查詢設(shè)計思想:在輸入寢室號時可以把該宿舍所住的所有學(xué)生的信息都統(tǒng)計出來,方便詳細(xì)了解某宿舍的學(xué)生住宿情況。5.住宿情況查詢圖3.11 住宿情況查詢界面設(shè)計思想:點(diǎn)擊多選框里的按樓房號查詢按鈕可以查看某棟樓房所有宿舍的住宿情況,看看還有哪些宿舍還有空的床位,可以入住學(xué)生。還可以查看某個宿舍的詳細(xì)情況。同時該模塊還能夠統(tǒng)計某棟樓房的所有學(xué)生人數(shù)。具體實現(xiàn):(1).首先通過TADOQuery控件實現(xiàn)數(shù)據(jù)庫和該功能模塊的關(guān)聯(lián),再通過TDatasourse實現(xiàn)寢室表(Dorm)和TDBGrid顯示表格的關(guān)聯(lián),把宿舍信息顯示在下面的表格中。(2).其次放置一

8、個復(fù)選按鈕鍵,可以方便實現(xiàn)按樓房號和按宿舍號兩種方式的查詢。在右邊放置一個查詢框,進(jìn)行查詢條件的輸入。在按樓房號查詢時,用到了模糊查詢。模糊查詢的在本部分的基本原理就是:我們在剛開始建庫時考慮到管理方便和減少冗余,在對學(xué)生進(jìn)行宿舍號登記時是這么描述的如:6-502,將其樓房號和宿舍號放一個字段中,并沒有將其分開操作。所以在查詢這部分當(dāng)需要按樓房號進(jìn)行查詢時,就要注意了。假如我們要查5號樓的住宿情況,那么在TDBGrid表格中的顯示就應(yīng)該是5-*,而6-502雖然也包含了5這個字符,但它不屬于5號樓,所以要將其排除在外。因此我們采用了模糊查詢,查詢結(jié)果只顯示所需信息。(3).在住宿統(tǒng)計的實現(xiàn)上,

9、我們使用的SQL集函數(shù)SUM()來實現(xiàn)的。它的主要功能就是計算一列值得總和(此列必須是數(shù)值型)。將要查的樓房號,輸入到查詢條件中時,還需要判斷該樓房號到底存不存在,如果存在在點(diǎn)擊該模塊中的住宿統(tǒng)計按鈕,那么該樓房所有學(xué)生的總?cè)藬?shù)會在住宿統(tǒng)計按鈕右邊的Memo文本顯示控件里面進(jìn)行顯示了,同時該樓房的詳細(xì)住宿情況會在表格中進(jìn)行具體顯示。綜合以上分析,要實現(xiàn)上面的所有功能模塊,共需要設(shè)計九個表,它們分別是:學(xué)生基本情況表、寢室表、員工表、樓房表、人員來訪表、學(xué)生財產(chǎn)表、學(xué)期注冊表、權(quán)限表、物品出入樓表。系統(tǒng)表如下:1.用戶表:登記管理人員的用戶名、密碼及登錄權(quán)限。2.學(xué)生基本情況表:詳細(xì)登記學(xué)生基本

10、信息及學(xué)生住宿情況。3.寢室表:登記所有宿舍的詳細(xì)情況。4.員工表:登記所有管理人員的詳細(xì)情況。5.人員來訪表:登記所有來訪人員的詳細(xì)情況。6.物品出入表:詳細(xì)登記學(xué)生物品出樓信息。7.樓房表:登記所有住宿樓情況。8.學(xué)期注冊表:登記學(xué)生每學(xué)期的注冊情況。9.學(xué)生財產(chǎn)表:登記學(xué)生物品情況。表3.1 用戶表(LoginIn)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyUserName用戶名char10NYUserId用戶密碼char10NYUserPower用戶權(quán)限char20NN表3.2 學(xué)生基本情況表(Student)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyStu_I

11、d學(xué)號char20NY and FStu_Name姓名char10YNStu_Sex性別char10YNDor_Id寢室號char10NFStu_Enr入學(xué)日期datetime10YNStu_Birth出生日期datetime10YNStu_Study所學(xué)專業(yè)char10YNStu_Class班級char10YNStu_Polit政治面貌char10YNStu_Add家庭住址char50YNStu_Tel聯(lián)系方式char10YNStu_Sta狀態(tài)char10YNStu_Des備注char50YN表3.3 寢室表(Dorm)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyDor_Id寢室號

12、char10NYDor_Sex居住性別char10YNDor_Num應(yīng)住人數(shù)char10YNDor_Fact實住人數(shù)char10YNDor_Price住宿費(fèi)用char10YNDor_Tel電話char10YNDor_Des備注char50YN表3.4 員工表(Employee)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyEmp_Id員工號char20NYEmp_Name姓名char10YNEmp_Age年齡char10YNEmp_Sex性別char10YNHou_Id樓房號char10NFEmp_Job職位char10YNEmp_Add家庭住址char50YNEmp_Tel聯(lián)系方式c

13、har10YNEmp_Des備注char50YN表3.5 人員來訪表(Visit)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyVis_Name來訪人姓名char10NNVis_Host被訪人姓名char10YNDor_Id宿舍char10NFRelation所屬關(guān)系char10YNVis_Data來訪日期datetime10YNVis_Time來訪時間datetime10YNLea_Time離開時間datetime10YNVis_Watch值班人char10YNVis_Cred證件名稱char10YNVis_Des備注char50YN表3.6 物品出入樓表(Goodsmove)字段名

14、描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyStu_Id學(xué)號char20NYG_In進(jìn)樓物品char10YNG_Out出樓物品char10YNG_Date時間datetime10YNWatch值班人char10YNG_Des備注char50YN表3.7 樓房表(House)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyHou_Id樓房號char20NYHou_Num樓層數(shù)char10YNHou_Rom房間數(shù)char10YNHou_Peo應(yīng)住人數(shù)char10YNHou_Des備注char50YN表3.8 學(xué)期注冊表 (Enroll)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimaryke

15、yStu_Id學(xué)號char20NYDor_Id寢室char10NFEnr_Date注冊日期datetime10YNEnr_Price所交費(fèi)用char10YNEnr_Sta交費(fèi)情況char10YNEnr_Year所交年度datetime10YYEnr_Des備注char50YN表3.9 學(xué)生財產(chǎn)表(Riches)字段名描述數(shù)據(jù)類型數(shù)據(jù)長度NULLPrimarykeyStu_Id學(xué)號char20NYDor_Id寢室char10YFBed床位char10YNStool凳子號Char10YNDesk桌子號char10YNTelphone電話char10YNKeySend鑰匙發(fā)否char10YNBox箱

16、子char10YNBedding被子char10YNDescription備注char50YN3.2 主要數(shù)據(jù)結(jié)構(gòu)及算法本管理系統(tǒng)共用到九個表:用戶表(LoginIn)、學(xué)生基本情況表(Student)、寢室表(Dorm)、員工表(Employee)、人員來訪表(Visit)、物品出入樓表(Goodsmove)、樓房表(House)、學(xué)生財產(chǎn)表(Riches)、學(xué)期注冊表 (Enroll),各表之間均有一定的關(guān)系,可以進(jìn)行關(guān)聯(lián)。1.學(xué)生基本情況表(Student)、學(xué)生財產(chǎn)表(Riches)、學(xué)期注冊表 (Enroll)、物品出入樓表(Goodsmove)這四個表里面都有一個相同的字段:學(xué)號(

17、Stu_Id),通過學(xué)號這個字段就可以將系統(tǒng)的這四個表關(guān)聯(lián)了起來。當(dāng)某個表發(fā)生插入、修改、刪除等方面的改動時,相聯(lián)的表之間也要進(jìn)行相應(yīng)的改動。學(xué)生基本情況表(Student)和寢室表(Dorm)也有一個相同的字段:寢室號(Dor_Id)將兩表相關(guān)聯(lián)。.由于員工是負(fù)責(zé)管理某棟樓房的,因此員工表(Employee),樓房表(House)這兩個表之間有一個相同的字段:樓房號(Hou_Id)來進(jìn)行關(guān)聯(lián)。3.3 函數(shù)流程圖圖3.1 系統(tǒng)功能流程圖4 具體代碼實現(xiàn)1.增加用戶源代碼procedure TAddUserForm.BitBtn1Click(Sender: TObject);beginif Ed

18、it1.Text ='' then begin MessageBox(handle,'請輸入用戶名!','',MB_OK+MB_ICONWARNING); Edit1.SetFocus ; exit; end;if Edit2.Text ='' then begin MessageBox(handle,'請輸入用戶密碼!',',MB_OK+MB_ICONWARNING); Edit2.SetFocus ; exit; end; if ComboBox1.Text ='' then begin

19、 MessageBox(handle,'請選擇用戶權(quán)限!','',MB_OK+MB_ICONWARNING); Edit2.SetFocus ; exit; end;With DataMD.ADOAddUser dobegindatamd.ADOAddUser.Insert; / 插入一條空白記錄 datamd.ADOAddUser.FieldByName('UserName').AsString:=trim(edit1.Text);datamd.ADOAddUser.FieldByName('UserId').AsString:

20、=trim(edit2.Text); datamd.ADOAddUser.FieldByName('UserPower').AsString:=trim(ComboBox1.Text);If MessageDlg('確定要添加嗎 ?!',mtconfirmation,mbYes,mbNo,0)=mrYes then begin post; edit1.Text:='' edit2.Text:='' MessageBox(handle,'用戶信加!','!',MB_OK+MB_ICONWARNING)

21、; end else begin cancel; edit1.Text:='' edit2.Text:='' end; end ;end;procedure TAddUserForm.BitBtn2Click(Sender: TObject);beginclose;end;end;2.刪除用戶源代碼procedure TAddUserForm.BitBtn3Click(Sender: TObject);vardeleteName:string;deletePass:string;deletePower:string;beginif Edit1.Text =

22、9;' then begin MessageBox(handle,'輸入所刪用戶名',MB_OK+MB_ICONWARNING); Edit1.SetFocus ; exit; end;if Edit2.Text ='' then begin MessageBox(handle,'輸入所刪用戶密碼',MB_OK+MB_ICONWARNING); Edit2.SetFocus ; exit; end;if ComboBox1.Text ='' then beginMessageBox(handle,'輸入所刪用戶權(quán)限

23、!',MB_OK+MB_ICONWARNING); Edit2.SetFocus ; exit; end;Datamd.ADOAdduer.Close ;Datamd.ADOAdduer.SQL.Clear ;Datamd.ADOAdduer.SQL.Add(' select * from LoginIn where username = '''+Edit1.Text +'''and');Datamd.ADOAdduer.SQL.Add('userId='''+Edit2.text+'

24、;''');Datamd.ADOAdduer.Prepared ;Datamd.ADOAdduer.Open ;if Datamd.ADOAdduer.Eof then begin MessageBox(handle,'該用戶信息不存在,請確認(rèn)后再輸入!','警告',MB_OK+MB_ICONWARNING); Edit1.SelectAll; edit1.Text:='' edit2.Text:='' exit; end;deleteName:=edit1.Text ;deletePass:=edit2.

25、Text ;deletePower:= ComboBox1.Text ;With DataMD.ADOAddUser doIf MessageDlg('確定刪除?!',mtconfirmation,mbYes,mbNo,0)=mryes thenbegindatamd.ADOCommand1.CommandText:='delete from loginIn where (username='''+deleteName+''')and(useriD='''+deletepass+''

26、')and(userpower='''+deletepower+''')'datamd.ADOCommand1.Execute ;edit1.Text:=''edit2.Text:=''MessageBox(handle,'用戶信息已刪除!','!',MB_OK+MB_ICONWARNING);endelse begin cancel; edit1.Text:='' edit2.Text:='' end ;end;procedure T

27、AddUserForm.BitBtn4Click(Sender: TObject);beginclose;end;-密碼修改源代碼-procedure TUserChange.BtsubmitClick(Sender: TObject);beginif UserNameEdit.Text ='' then begin messagedlg('請輸入用戶名',mtwarning,mbok,0); UserNameEdit.SetFocus ; exit; end; if OldPassWordEdit.Text ='' then begin mes

28、sagedlg('請輸入原始密碼',mtwarning,mbok,0); OldPassWordEdit.SetFocus ; exit; end; if NewPasswordEdit.Text ='' then begin messagedlg('請輸入新密碼',mtwarning,mbok,0); NewPasswordEdit.SetFocus ; exit; end; if submitEdit.Text ='' then begin messagedlg('請輸入確認(rèn)密碼',mtwarning,mbok

29、,0); submitEdit.SetFocus ; exit; end;/判斷兩次輸入的新密碼是否相同if trim(newpasswordedit.Text)<>trim(submitedit.Text) thenbeginmessagedlg('請重新輸入,新密碼與確認(rèn)密碼不一致!',mtinformation,mbok,0); NewPasswordEdit.Text:='' submitEdit.Text:='' newpasswordedit.SetFocus;endelsebeginwith datamd.ADOchan

30、ge do begin close; sql.Clear; sql.Add('select * from LoginIn where sername='''+usernameedit.Text+''''+'anduserId='''+oldpasswordedit.Text+''''); open; if eof then /當(dāng)沒有查詢到該記錄時,就說明當(dāng)前為空 begin showmessage('對不起,您所輸入的用戶名或密碼錯誤,請重新輸');

31、UserNameEdit.Text:='' OldPassWordEdit.Text:='' NewPasswordEdit.Text:='' submitEdit.Text:='' end else begin edit; fieldbyname('UserId').AsString:=newpasswordedit.Text; post; showmessage('新密碼修改成功,請記牢!'); UserNameEdit.Text:='' OldPassWordEdit.Text

32、:='' NewPasswordEdit.Text:='' submitEdit.Text:='' end; end;end;end;procedure TUserChange.BtCancelClick(Sender: TObject);beginclose;end;end;-公寓管理模塊源代碼-1.樓房管理源代碼procedure THouseForm.Button1Click(Sender: TObject);beginif edit1.Text='' then beginMessageBox(handle,'樓房編

33、號不能為空 !','警告',MB_OK+MB_ICONWARNING); edit1.SetFocus ; exit;end;/檢查系統(tǒng)中是否存在該學(xué)號的學(xué)生 datamd.ADOHouse.Close ; datamd.ADOHouse.SQL.Clear ; datamd.ADOHouse.SQL.Text :='select hou_Id from house where hou_Id='''+edit1.Text+'''' datamd.ADOHouse.Prepared ; datamd.ADOH

34、ouse.Open ; if not datamd.ADOHouse.IsEmpty then begin MessageBox(handle,'該樓房信息已經(jīng)存入數(shù)據(jù)庫!','警告',MB _OK+MB_ICONWARNING); edit1.Text:='' edit2.Text:='' edit3.Text:='' edit4.Text:='' edit5.Text:='' edit1.SetFocus ; exit; end; datamd.ADOHouse.Close ;

35、datamd.ADOHouse.SQL.Clear ; datamd.ADOHouse.SQL.Text:='select* from house ' datamd.ADOHouse.Prepared ; datamd.ADOHouse.Open ; datamd.ADOHouse.Insert; datamd.ADOHouse.FieldByName('hou_id').AsString:=trim(edit1.Text); datamd.ADOHouse.FieldByName('hou_Num').AsString:=trim(edit2.

36、Text); datamd.ADOHouse.FieldByName('hou_Rom').AsString:=trim(edit3.Text); datamd.ADOHouse.FieldByName('hou_Peo').AsString:=trim(edit4.Text); datamd.ADOHouse.FieldByName('hou_Des').AsString:=trim(edit5.Text); if messagedlg('請確認(rèn)輸入的數(shù)據(jù)無誤!',mtconfirmation,mbYes,mbNO,1)=mry

37、es then begin datamd.ADOHouse.Post; ShowMessage('樓房信息登記完畢!'); edit1.Text:='' edit2.Text:='' edit3.Text:='' edit4.Text:='' edit5.Text:='' end else begin showmessage('操作已取消,請重新輸入'); datamd.ADOHouse.cancel; edit1.Text:='' edit2.Text:='

38、' edit3.Text:='' edit4.Text:='' edit5.Text:='' end; end;procedure THouseForm.Button2Click(Sender: TObject);beginclose;end;end.2.宿舍管理源代碼procedure TDormForm.BitBtn1Click(Sender: TObject);beginif edit1.Text='' then begin messagedlg('請輸入寢室號!',mtinformation,mbo

39、k,0); exit; end;if edit2.Text='' then begin messagedlg('請輸入寢室應(yīng)住人數(shù)!',mtinformation,mbok,0); exit; end; if edit4.Text='' then begin messagedlg('請為該寢室確定住宿費(fèi)用!',mtinformation,mbok,0); exit; end; if ComboBox2.Text='' then begin messagedlg('請選擇居住性別!',mtinform

40、ation,mbok,0); exit; end; /檢查系統(tǒng)中是否存在該寢室號 datamd.ADODorm.Close ; datamd.ADODorm.SQL.Clear ; datamd.ADODorm.SQL.Text:='select Dor_Id from Dorm where Dor_Id='''+Edit1.Text+'''' datamd.ADODorm.Prepared ; datamd.ADODorm.Open ; if not datamd.ADODorm.IsEmpty then begin Messa

41、geBox(handle,'該寢室號已錄入!','警告',MB_OK+MB_ICONWARNING); Edit1.SetFocus ; exit; end;/寢室信息錄入 datamd.ADODorm.Close ; datamd.ADODorm.SQL.Clear ; datamd.ADODorm.SQL.Add('select * from dorm'); datamd.ADODorm.Open ; datamd.ADODorm.Insert; datamd.ADODorm.FieldByName('Dor_Id').AsS

42、tring:=trim(edit1.Text); datamd.ADODorm.FieldByName('Dor_Num').AsString:=trim(edit2.Text); datamd.ADODorm.FieldByName('Dor_Price').AsString:=trim(edit4.Text); datamd.ADODorm.FieldByName('Dor_sex').AsString:=trim(ComboBox2.Text); datamd.ADODorm.FieldByName('Dor_Tel').A

43、sString:=trim(edit5.Text); datamd.ADODorm.FieldByName('Dor_Des').AsString:=trim(edit6.Text); datamd.ADODorm.Post; ShowMessage('宿舍信息插入完畢!'); edit1.Text:='' edit2.Text:='' edit4.Text:='' edit5.Text:='' edit6.Text:=''end;procedure TDormForm.BitBtn

44、2Click(Sender: TObject);beginclose;end;procedure TDormForm.FormShow(Sender: TObject);begin datamd.ADODorm.Close ; datamd.ADODorm.SQL.Clear ; datamd.ADODorm.SQL.Add('select * from dorm order by dor_id asc' ); datamd.ADODorm.Open ;end;end.-信息查詢模塊源代碼-1.按學(xué)號進(jìn)行查詢procedure TDemandForm.Button1Click(

45、Sender: TObject);var StuId:string; begin if edit1.Text='' then begin messagedlg('請輸入所要查詢學(xué)生的學(xué)號!',mtinformation,mbok,0); exit; end; /檢查系統(tǒng)中是否存在該學(xué)號的學(xué)生ADOId.Connection :=DataMd.ADOConnection ;ADOId.Close ;ADOId.SQL.Clear ;ADOId.SQL.Add('select * from student where stu_id=''

46、9;+Edit1.Text +'''');ADOId.Prepared ;ADOId.Open ;if ADOId.Eof then beginMessageBox(handle,'該學(xué)號的學(xué)生信息不存在,請重新輸入!','警告',MB_OK+MB_ICONWARNING); Datamd.ADOStudent.Close ; Datamd.ADOStudent.SQL.Clear ; Datamd.ADOStudent.SQL.Add('select * from enroll'); Datamd.ADOStud

47、ent.Prepared ; Datamd.ADOStudent.Open ; edit1.Text:='' Edit1.SelectAll; exit; end;StuId:=Edit1.Text ; ADOId.Close; ADOId.SQL.Clear ; ADOId.SQL.Add('select * from student');ADOId.SQL.Add('where Stu_Id='''+StuId+''''); ADOId.Prepared ; ADOId.Open ; edit1

48、.Text:=''end;procedure TDemandForm.BitBtn1Click(Sender: TObject);beginclose;end;end;2.按姓名進(jìn)行查詢procedure TDemandForm.Button2Click(Sender: TObject);var StuName:string; begin if edit2.Text='' then begin messagedlg('請輸入所要查詢學(xué)生的姓名!',mtinformation,mbok,0); exit; end;ADOId.Connection

49、:=DataMd.ADOConnection ;ADOId.Close ;ADOId.SQL.Clear ;ADOId.SQL.Add('select * from student where stu_Name='''+Edit2.Text +'''');ADOId.Prepared ;ADOId.Open ;if ADOId.Eof then begin MessageBox(handle,'該姓名的學(xué)生信息不存在,請重新輸入!','警告',MB_OK+MB_ICONWARNING); Datam

50、d.ADOStudent.Close ; Datamd.ADOStudent.SQL.Clear ; Datamd.ADOStudent.SQL.Add('select * from enroll'); Datamd.ADOStudent.Prepared ; Datamd.ADOStudent.Open ; edit2.Text:='' Edit2.SelectAll; exit; end;StuName:=Edit2.Text ; ADOId.Close; ADOId.SQL.Clear ; ADOId.SQL.Add('select * from

51、student'); ADOId.SQL.Add('where Stu_Name='''+StuName+''''); ADOId.Prepared ; ADOId.Open ; edit2.Text:=''end;procedure TDemandForm.BitBtn2Click(Sender: TObject);beginclose;end;end;3.按寢室號進(jìn)行查詢procedure TDemandForm.Button3Click(Sender: TObject);var DormId:stri

52、ng;begin if edit3.Text='' then begin messagedlg('請輸入該生所住寢室號!',mtinformation,mbok,0); exit; end; ADOId.Connection :=DataMd.ADOConnection ; ADOId.Close ; ADOId.SQL.Clear ; ADOId.SQL.Add('select * from student where Dor_Id='''+Edit3.Text +''''); ADOId.Pre

53、pared ; ADOId.Open ; if ADOId.Eof then begin MessageBox(handle,'該寢室還沒有入住學(xué)生或?qū)嬍也淮嬖冢堉匦螺斎?','警告',MB_OK+MB_ICONWARNING); Datamd.ADOStudent.Close ; Datamd.ADOStudent.SQL.Clear ; Datamd.ADOStudent.SQL.Add('select * from enroll'); Datamd.ADOStudent.Prepared ; Datamd.ADOStudent.Open ; edit3.Text:='' Edit3.SelectAll; exit; end;DormId:=Edit3.Text; ADOId.Close; ADOId.SQL.Clear ; ADOId.SQL.Add('select * from student'); ADOId.SQL.Add('where Dor_Id='''+DormI

溫馨提示

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

評論

0/150

提交評論