




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1 .系統(tǒng)需求說明本系統(tǒng)的最終用戶為宿舍樓管理員,本宿舍樓的學(xué)生。個宿舍號,其入校時間就是他的入住時間。另外, 在一起,相應(yīng)地會有其所在的院系名稱。(2)每間宿舍都有唯一的宿舍號,入校時, 和宿舍的人員(3) 宿舍樓在指定的時間關(guān)門(比如晚上宿舍會裝公用電話機(jī),相應(yīng)地就有宿舍電話號碼。11點),若有同學(xué)晚于關(guān)門時間回宿舍,需通知宿(1)入校時,每位同學(xué)都有唯一的學(xué)號,并被分配到指定的宿舍樓和指定的宿舍,也會有一 為了管理上的方便,同一院系的學(xué)生的宿舍一般舍樓管理員,同時應(yīng)登記晚歸學(xué)生學(xué)號,宿舍號,時間和晚歸原因,以利于學(xué)校的管理和查證。(4) 每當(dāng)放寒假或暑假時,同學(xué)們大部分都會回家;每當(dāng)“五
2、一”或“十一”放假時,同學(xué)們也有很多不會留在宿舍。為加強(qiáng)學(xué)校對同學(xué)假期安全的管理,離校的同學(xué)應(yīng)登記離校時間,待返校后記錄返校時間,以便學(xué)校查證和管理?;谝陨系男枨螅?1) 宿舍樓管理員能查詢上面提到的宿舍樓的所有相關(guān)信息,包括某一學(xué)號的學(xué)生在宿舍樓 中住宿的詳細(xì)信息和夜歸的詳細(xì)信息和學(xué)生離返校的信息。以利于對整個宿舍樓的全面管理。(2) 當(dāng)學(xué)生基本信息發(fā)生變化時,宿舍樓管理員能對其進(jìn)行修改。比如,某些同學(xué)搬到其他 的宿舍中去,他們在本宿舍樓中相應(yīng)的記錄就應(yīng)該刪去;或者學(xué)生轉(zhuǎn)換專業(yè),他們記錄中院系的信 息也要作相應(yīng)的修改等等。(3 )本宿舍樓的學(xué)生能查詢其所在的宿舍的所有信息,2.數(shù)據(jù)庫結(jié)構(gòu)設(shè)
3、計(2)邏輯結(jié)構(gòu)設(shè)計住宿學(xué)生表:屬性名類型長度備注學(xué)號char20住宿學(xué)生學(xué)號姓名char20住宿學(xué)生姓名性別char4專業(yè)char40學(xué)生專業(yè)宿舍號char6住宿學(xué)生宿舍號入住時間date8新生搬入時間宿舍表:屬性名類型長度備注宿舍號char6宿舍電話char15密碼表:屬性名類型長度備注用戶明char20密碼char20用戶類型tnyint1管理員或?qū)W生離校表:屬性名類型長度備注學(xué)號char20離校學(xué)生姓名宿舍號char6離校學(xué)生宿舍號離校時間date8學(xué)生離校時間返回時間date8學(xué)生返校時間3NF)( 3)( 3)詳細(xì)描述將E-R圖轉(zhuǎn)換成關(guān)系模型的過程以及對關(guān)系模式的規(guī)范化,至少達(dá)到物
4、理結(jié)構(gòu)設(shè)計以表格形式詳細(xì)描述系統(tǒng)需要的基本表及屬性、視圖和索引,對基本表的主鍵、候選鍵、外鍵及被參照表進(jìn)行說明,對基本表中數(shù)據(jù)的約束條件進(jìn)行說明。3. 系統(tǒng)功能設(shè)計學(xué)生部分:1、處理用戶注冊2、處理用戶登錄3、用戶可以查詢學(xué)生信息。4、用戶可以修改用戶自己密碼。管理員部分:1、處理管理員登錄2、管理員可以查詢學(xué)生信息。3、管理員可以插入與查詢學(xué)生夜歸信息。4、管理員可以查詢在校與離校學(xué)生信息。5、管理員可以修改管理員密碼4.系統(tǒng)實現(xiàn)(1)本軟件是基于 SQL Sever 2000和Visual C+6.0的軟件開發(fā)環(huán)境和至少奔騰以上處理器以(2) 首先按照上邊所設(shè)計的邏輯結(jié)構(gòu),創(chuàng)建數(shù)據(jù)庫,并輸
5、入部分?jǐn)?shù)據(jù),例如在密碼表中輸入用戶名為ys密碼為1用戶類型為管理員和一個用戶名為wj密碼為0的學(xué)生類型的數(shù)據(jù)。利用系統(tǒng)自帶的 ODBC數(shù)據(jù)庫管理器建立一個名為“宿舍管理”的數(shù)據(jù)源。(3) 建立名為“宿舍管理”的工程。設(shè)計用戶登錄窗口 說明:登錄串口分為兩種一種是管理員登錄,一種為用戶登錄用戶疊錄 I退岀(1 )添加對話框類為 psw,并在psw類中添加 CDatabase類型的變量 m_database和Crecordset類型的變量 m_recordset; 并且添加相應(yīng)的全局變量extern CString username,userpower;(2)添加消息相應(yīng)函數(shù),并編寫如下代碼Up
6、dateData(true);if(!m_database.ls Open ()if(m_database.Open(_T(宿舍管理)m_crecordset.m_ pDatabase=&m_database;CStri ng sql,select;if(m_select.GetCurSel()=O)select=管理員;elseselect=學(xué)生; sql.Format(select * from 密碼表 where 用戶名=%s and 密碼=%s and 用戶類型=%s,m_username,m _p sw,select);m_crecordset.O pen( CRecordset:f
7、orward Onl y,sql);if(m_crecordset.GetRecordCo un t ()=0)MessageBox(用戶名密碼錯誤”);elseuser po wer=select;CDialog: On OK();m_crecordset.Close ();m_database.Close ();elseMessageBox(不能打開數(shù)據(jù)庫);設(shè)計啟動界面。加載MFC組建Csplash并設(shè)置啟動時間為 1500ms -0708030220相應(yīng)的代碼如下:I-忙公.V嗎I A JL int CSp lashWnd:O nCreate(L PCREATESTRUCT lp Cr
8、eateStruct)if (CWnd:O nCreate (Ip CreateStruct) = -1)return -1;/ Cen ter the wi ndow.CenterWindow();/ Set a timer to destroy the splash screen.SetTimer(1, 1500, NULL);return 0; 在資源中加入一張位圖 IDB_BITMAP1并且在 Ondraw 函數(shù)中加入下列代碼,以實現(xiàn)單文檔背景void CMy2View:OnDraw(CDC* pDC)CMy2Doc* pDoc = GetDocument();ASSERT_VALID
9、(pDoc);CBitmap m_Bitmap;m_Bitmap.LoadBitmap(IDB_BITMAP3);CDC memDC;/設(shè)備上下文memDC.CreateCompatibleDC(pDC);memDC.SelectObject(&m_Bitmap);BITMAP m_Bmp;m_Bitmap.GetBitmap(&m_Bmp);int x = m_Bmp.bmWidth;int y = m_Bmp.bmHeight;CRect rect;/創(chuàng)建內(nèi)存設(shè)備上下文/將位圖選人設(shè)備上/聲明 BITMAP 對象/獲得位圖信息/獲得位圖的寬度/獲得位圖的高度/聲明區(qū)域?qū)ο?獲得編輯框客戶區(qū)
10、GetClientRect(rect);/繪制位圖背景域pDC-StretchBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,x,y,SRCCOPY);memDC.DeleteDC();/ TODO: add draw code for native data here 設(shè)計用戶注冊對話框運行后效果學(xué)號170803022(姓名性別男專業(yè)pm機(jī)宿舍號006入學(xué)時間2C07_9_l圖為輸入注冊相關(guān)信息后的界面void zhuce:O nOK()Up dateData(l);if(!m_database .lsOpen()if(!m_database.Op
11、en(_T(宿舍管理)MessageBox(不能打開數(shù)據(jù)庫?。?if(!(m_ name&m_zhua nye&m_sno)MessageBox(輸入信息不完整,不能入庫?。?elseCStri ng strSQL,sex;if(m_sex.GetCurSel()=O)sex=男;elsesex=女;strSQL.Format(insert into 住宿學(xué)生(學(xué)號,姓名,性別,專業(yè),宿舍號,入住時間)values(%s,%s,%s,%s,%s,%s),m_s no,m_n ame,sex,m_zhua ny e,m_rooms no, m_data);m_database.ExecuteSQ
12、L(strSQL);MessageBox(注冊成功!,學(xué)生注冊);m_database.Close();CStri ng str;str.Format(”學(xué)號:%s性別:%s姓名:srn專業(yè):%s宿舍號:%s入住時間:%sr n,m_s no,m_n ame,sex,m_zhua ny e,m_rooms no, m_data);m_sql+=str;Up dateData(O);CDialog:O nOK();學(xué)生查詢和管理員查詢工具欄中的兩個“學(xué)生查詢”和“管理員查詢”對應(yīng)于一個對話框。只是查詢時查詢的結(jié)果處理不同,當(dāng)時學(xué)生查詢時,只能查自己的,管理員課以查看全部學(xué)生時,運行界面:學(xué)號用戶
13、類別浮生學(xué)號姓名1性別專業(yè)1宿舍號住宿吋間OYOS03.袁jJ巾男計算機(jī)8_50620C7_9_l宿舍信息1番詢學(xué)生信圍HHMHH |查詢宿舍信息刪除學(xué)生信息退出當(dāng)是管理員時,其查詢界面為:I查詢盞統(tǒng)回區(qū)1學(xué)號用戶類別I管理員3宿舍號卩_506學(xué)號 丨姓名宿舍號 I住宿時間I070S03.070803.070S03.070S03.平剛濤新帥金洪王袁吳田男男男機(jī)機(jī)機(jī)機(jī)計計計計7 OO207BW1WS H J 查詢宿舍信息退出列表控件初始化代碼:BOOL stu_check:O nini tDialog()CDialog:O nIni tDialog();/ TODO: Add extra ini
14、 tialization herem_list.InsertColumn(0,學(xué)號);m_list.InsertColumn(1,姓名); m_list.InsertColumn(2,性別);m_list.InsertColumn(3,專業(yè)); m_list.InsertColumn(4,宿舍號);m_list.InsertColumn(5,住宿時間);CRect r;m_list.GetWi ndowRect(&r);int wid=r.Width ();for(i nt i=0;i6;i+)m_list.SetColu mn Width(i,wid/6);m_list.SetExte nd
15、edStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);return TRUE; / return TRUE unless you set the focus to a control/ EXCEPTION: OCX Property Pages should return FALSE 其查詢相應(yīng)的代碼為:void stu_check:OnOK()/ TODO: Add extra validation hereUpdateData(1);if(!m_database.IsOpen()if(!m_database.Open(_T( 宿舍管理 )Messag
16、eBox(Cannot open database!, 信息查詢 );return;CString strSQL,s;m_recordset.m_pDatabase=&m_database;if(userpower!= 管理員 )strSQL.Format(select * from 住宿學(xué)生 where 學(xué)號 =%s,m_sno);m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);elses.Format(select * from 住宿學(xué)生 );m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,s);if(m_
17、recordset.GetRecordCount()=0)MessageBox( 宿舍沒有此人 !, 學(xué)生信息查詢 );m_recordset.Close();m_database.Close();return;m_list.DeleteAllItems();m_recordset.MoveFirst();int i=0;while(!m_recordset.lsEOF() CStri ng temp;m_list.I nsertltem(i,te mp);m_list.SetItemText(i,0,m_recordset.m_colu mn1 );m_list.SetltemText(i,
18、1,m_recordset.m_colu mn2 );m_list.SetltemText(i,2,m_recordset.m_colu mn3 );m_list.SetltemText(i,3,m_recordset.m_colu mn4 );m_list.SetltemText(i,4,m_recordset.m_colu mn5 );m_list.SetItemText(i,5,m_recordset.m_colu mn6 );i+;m_recordset.MoveNext();Up dateData(O);m_database.Close();當(dāng)按下刪除時界面當(dāng)學(xué)生畢業(yè)需要刪除時:刪除
19、相應(yīng)代碼為:UpdateData(1);if(!m_database.IsOpen()if(!m_database.Open(_T( 宿舍管理 )MessageBox(Cannot open database!, 信息查詢 );return;CString strSQL;m_recordset.m_pDatabase=&m_database;strSQL.Format(select * from 住宿學(xué)生 where 學(xué)號 =%s,m_sno);m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);int i=m_list.GetNextItem(-
20、1,LVNI_SELECTED);CString sql=(m_list.GetItemText(i,0);if(sql=)MessageBox( 請選擇一行 );elseif(MessageBox( 您確定要刪除嗎? ,刪除詢問,MB_OKCANCEL|MB_ICONQUESTION)=IDOK)CString s;s.Format(delete 住宿學(xué)生 where 學(xué)號 =%s,m_sno);m_database.ExecuteSQL(s);MessageBox(刪除成功!,” 提示”);UpdateData(0);refreshlist();m_database.Close();其中在
21、刪除中用到刷新函數(shù)refresh。.其相應(yīng)的代碼為:void stu_check:refreshlist()UpdateData(1);m_list.DeleteAllItems();if(!m_database.IsOpen()if(m_database.Open(_T( 宿舍管理 )CString strSQL,s;m_recordset.m_pDatabase=&m_database;if(userpower!= 管理員 )strSQL.Format(select * from 住宿學(xué)生 where 學(xué)號 =%s,m_sno);m_recordset.Open(AFX_DB_USE_DE
22、FAULT_TYPE,strSQL);elses.Format(select * from 住宿學(xué)生 );m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,s);m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);m_recordset.MoveFirst();int i=0;while(!m_recordset.IsEOF() CString temp;m_list.InsertItem(i,temp);m_list.SetItemText(i,0,m_recordset.m_column1 );m_list.Se
23、tItemText(i,1,m_recordset.m_column2 );m_list.SetItemText(i,2,m_recordset.m_column3 );m_list.SetItemText(i,3,m_recordset.m_column4 );m_list.SetItemText(i,4,m_recordset.m_column5 );m_list.SetItemText(i,5,m_recordset.m_column6 );UpdateData(0);i+;m_recordset.MoveNext();m_database.Close();學(xué)生與管理員密碼修改:新密碼確
24、認(rèn)確認(rèn)宿舍管理2岡m_recordset.O pen( CRecordset:forward Onl y,strSQL);添加確認(rèn)消息函數(shù);Up dateData(l);if(!m_database .lsOpen()if(!m_database.Open(_T(宿舍管理)MessageBox(不能打開數(shù)據(jù)庫r);m_recordset.m_ pDatabase=&m_database;CStri ng strSQL;strSQL.Format(select * from 密碼表 where 用戶名=%s and 密碼=%s,m_username,m_old psw);if(m_records
25、et.lsBOF()/ 記錄集為空MessageBox(用戶密碼不正確,請重新輸入”);elseif(m_newp sw!=m _newp sw2)MessageBox(兩次輸入密碼不一致,請重新輸入);elsestrSQL.Format(update 密碼表 set 密碼=%swhere 用戶名=%s,m _newp sw2,m_username);m_database.ExecuteSQL(strSQL);MessageBox(密碼修改成功);Up dateData(O);m_recordset.Close();m_database.Close();管理員具有查詢學(xué)生離校的情況:夷校情況査
26、詢學(xué)號1宿苦號1離校州可返回時間0708030220.0 50C21109_12_120Q9_l2_3011備注學(xué)號 |0706030224 H I.H H!查詢I 刪除記錄I - ll Ilin nun H 查詢代碼:void stu_check1:OnOK()/ TODO: Add extra validation hereUpdateData(1);if(userpower!= 管理員 )MessageBox( 非管理員不能進(jìn)行此項操作! );return;else if(!m_database.IsOpen()if(!m_database.Open(_T( 宿舍管理 )MessageB
27、ox(Cannot open database!, 信息查詢 );return;CString strSQL;m_recordset.m_pDatabase=&m_database;strSQL.Format(select * from 離校 where 學(xué)號 =%s,m_sno);m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);if(m_recordset.GetRecordCount()=0)MessageBox( 宿舍沒有此人 !, 學(xué)生信息查詢 );m_recordset.Close();m_database.Close();return;m_list.DeleteAllItems();m_recordset.MoveFirst();int i=0;CString temp;while(!m_recordset.IsEOF()m_list.InsertItem(i,temp);m_list.SetItemText(i,0,m_reCords
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寧波水平鋼支撐施工方案
- 綏化學(xué)院《景觀工程技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海外國語大學(xué)賢達(dá)經(jīng)濟(jì)人文學(xué)院《食品物理學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 餐飲安全培訓(xùn)
- 上海電影藝術(shù)職業(yè)學(xué)院《互動敘事2》2023-2024學(xué)年第一學(xué)期期末試卷
- 《品味火鍋》課件
- 2025至2031年中國大功率干濕兩用吸塵器行業(yè)投資前景及策略咨詢研究報告
- 2025至2031年中國固定式(凸)焊機(jī)行業(yè)投資前景及策略咨詢研究報告
- 2025年新版試用期員工勞動合同模板大全
- 2025至2031年中國半流體齒輪潤滑脂行業(yè)投資前景及策略咨詢研究報告
- 2025年磁粉探傷工職業(yè)技能鑒定理論考試題庫(濃縮500題)
- 婚姻保證忠誠協(xié)議書
- 新2024年-北京市房屋租賃合同自行成交版
- 有效工作時間管理
- 2025年安徽省銅陵市樅陽縣浮山中學(xué)高三下學(xué)期3月適應(yīng)性考試歷史試題含解析
- 勞動合同法員工培訓(xùn)課件
- 2025年上海市房屋租賃合同模板(標(biāo)準(zhǔn)版)
- 詳解家庭教育指導(dǎo)師考試試題及答案
- 智慧城市中的公民參與-全面剖析
- 麻醉科急救處理職責(zé)
- 安全文明施工保證措施及承諾
評論
0/150
提交評論