




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、河北廣播電視大學(xué)畢業(yè)設(shè)計(jì)(論文)評審表題 目學(xué)生信息管理系統(tǒng)姓 名劉耀教育層次大學(xué)??茖W(xué) 號*分 校保定廣播電視大學(xué)專 業(yè)計(jì)算機(jī)信息管理教 學(xué) 點(diǎn)直屬班學(xué)生畢業(yè)設(shè)計(jì)(論文)評審表學(xué)生畢業(yè)設(shè)計(jì)(論文)一稿:隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長。面對龐大的信息量需要有學(xué)生管理系統(tǒng)來提高學(xué)生管理工作的效率。通過這樣的系統(tǒng)可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢、修改、增加、刪除等,從而減少管理方面的工作量。本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除
2、,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng);本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng)。學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng) (MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)?;趯W(xué)校學(xué)生眾多,為了數(shù)據(jù)的安全性,系統(tǒng)將學(xué)生數(shù)據(jù)保存在數(shù)據(jù)庫中,以Visual C+設(shè)計(jì)前臺對系
3、統(tǒng)進(jìn)行設(shè)計(jì)。因?yàn)閷W(xué)生信息管理系統(tǒng)是一項(xiàng)很實(shí)用的系統(tǒng),所面對的數(shù)據(jù)量很大,所以我們要求系統(tǒng)能夠高效快速的處理這些數(shù)據(jù),并且要保證數(shù)據(jù)的正確性、相容性和安全性。C+作為前臺是將數(shù)據(jù)庫中的數(shù)據(jù)讀取出來,有助于用戶對這些數(shù)據(jù)進(jìn)行相應(yīng)的操作,使操作更方便,更符合用戶的要求。所以該系統(tǒng)應(yīng)該要有一個(gè)良好的界面,使用戶感覺很直觀,使用快捷,這就是用C+所要實(shí)現(xiàn)的功能。 學(xué)生(簽名): 年 月 日 (可另附頁)指導(dǎo)教師評語初評成績指導(dǎo)教師(簽名): 年 月 日答辯記錄答辯主持人答辯小組成員秘 書答辯日期答辯教師提問學(xué)生回答情況12345答辯小組評語答辯主持人(簽名): 年 月 日答辯成績答辯主持人(簽名): 年
4、 月 日電大分校初審意見分校專業(yè)負(fù)責(zé)人(簽名): 年 月 日省級電大復(fù)審意見省級電大專業(yè)負(fù)責(zé)人(簽名): 年 月 日河北廣播電視大學(xué)“人才培養(yǎng)模式改革和開放教育試點(diǎn)” 計(jì)算機(jī)信息管理專業(yè) 畢業(yè)設(shè)計(jì) 畢業(yè)設(shè)計(jì)題目 學(xué)生信息管理系統(tǒng) 學(xué)生姓名 劉耀 學(xué) 號 21年 級 2011春 分校/學(xué)院 保定廣播電視大學(xué) 提交日期 2012年9月9日 前 言隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長。面對龐大的信息量需要有學(xué)生管理系統(tǒng)來提高學(xué)生管理工作的效率。通過這樣的系統(tǒng)可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢、修改、增加、刪除等,從而減少管理方面的工作量。本系統(tǒng)主要用于學(xué)校
5、學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng);本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改 、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng)。學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng) (MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于
6、后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)?;趯W(xué)校學(xué)生眾多,為了數(shù)據(jù)的安全性,系統(tǒng)將學(xué)生數(shù)據(jù)保存在數(shù)據(jù)庫中,以Visual C+設(shè)計(jì)前臺對系統(tǒng)進(jìn)行設(shè)計(jì)。因?yàn)閷W(xué)生信息管理系統(tǒng)是一項(xiàng)很實(shí)用的系統(tǒng),所面對的數(shù)據(jù)量很大,所以我們要求系統(tǒng)能夠高效快速的處理這些數(shù)據(jù),并且要保證數(shù)據(jù)的正確性、相容性和安全性。C+作為前臺是將數(shù)據(jù)庫中的數(shù)據(jù)讀取出來,有助于用戶對這些數(shù)據(jù)進(jìn)行相應(yīng)的操作,使操作更方便,更符合用戶的要求。所以該系統(tǒng)應(yīng)該要有一個(gè)良好的界面,使用戶感覺很直觀,使用快捷,這就是用C+所要實(shí)現(xiàn)的功能。摘 要:隨著信息技術(shù)在管理上越來越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一
7、個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動有機(jī)地組織起來,就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。 本課程設(shè)計(jì)主要用于一個(gè)學(xué)校信息的管理;包括學(xué)生基本信息的導(dǎo)入/導(dǎo)出;學(xué)生信息的錄入、修改、添加、刪除、查詢,通過該程序能夠簡單明了的實(shí)現(xiàn)以上功能。之所以選擇Visual C+作為開發(fā)工具,看中的是它的功能強(qiáng)大和使用方便。它本身不僅具有極其強(qiáng)大的編程能力,它允許選擇和管理外接程序,這些對Visual C+的擴(kuò)充又進(jìn)一步增強(qiáng)了它的開發(fā)環(huán)境的能力。數(shù)據(jù)庫選擇Microsoft SQL Server,不僅因?yàn)樗鼮槲覀兲峁┝艘唤M功能強(qiáng)大的工具,這些工具提供的功能相當(dāng)完善,能夠滿
8、足專業(yè)開發(fā)人員的需要;更重要的是對于我們這種新用戶來說,操作方便簡單,運(yùn)行快速安全,十分容易上手,很適合新手使用。關(guān)鍵詞:管理信息系統(tǒng)、學(xué)生管理、Visual C+、Microsoft SQL Server。 目 錄一、設(shè)計(jì)題目.1二、需求分析.1三、開發(fā)環(huán)境.1四、功能要求.1五、實(shí)現(xiàn)方法.2六、系統(tǒng)設(shè)計(jì)(詳細(xì)設(shè)計(jì)).2 (一)概念分析.2 (二)邏輯設(shè)計(jì). 3 (三)物理設(shè)計(jì)4 (四)部分功能實(shí)現(xiàn)代碼6七、系統(tǒng)測試運(yùn)行結(jié)果 22 (一)登錄.22 (二)讀取記錄.23 (三)新增記錄23 (四)查詢記錄 . 24 (五)刪除記錄 24 (六)修改記錄 25 總結(jié) . .25參考文獻(xiàn).26學(xué)
9、生信息管理系統(tǒng)設(shè)計(jì)說明書一、設(shè)計(jì)題目學(xué)生信息管理系統(tǒng)是學(xué)校日常信息管理的一個(gè)重要內(nèi)容。隨著學(xué)校考試次數(shù)越來越多,學(xué)生信息管理的工作量也變得越來越大。如果能對學(xué)生信息做系統(tǒng)的管理,就能更好更方便地快速查詢或者修改學(xué)生的考試成績,省去了文件管理的繁瑣與麻煩,無疑將給學(xué)校的管理部門帶來很大的方便。學(xué)生信息管理系統(tǒng)就是把學(xué)生的考試成績實(shí)行統(tǒng)一、集中、規(guī)范的收集管理,建立現(xiàn)代化、專業(yè)化的管理系統(tǒng)。學(xué)生信息管理系統(tǒng)的對象是在校學(xué)生,信息管理系統(tǒng)為學(xué)生提供了成績查詢等服務(wù);為學(xué)校及老師提供了添加、修改、刪除學(xué)生成績等服務(wù)。本系統(tǒng)基本上能夠滿足當(dāng)今學(xué)校學(xué)生學(xué)習(xí)成績信息管理的需求。學(xué)生個(gè)人成績信息錄入項(xiàng)目齊全、
10、完整、系統(tǒng)。本信息管理系統(tǒng)簡單明了,可以很方便查詢、閱讀、修改及重復(fù)使用。二、需求分析本系統(tǒng)設(shè)計(jì)者力求根據(jù)學(xué)生信息管理的需要,而建立一個(gè)“學(xué)生信息管理系統(tǒng)”,以方便對學(xué)生信息的各項(xiàng)管理操作。開發(fā)目的如:能對成績進(jìn)行錄入和修改;能添加該學(xué)生的記錄;能刪除該學(xué)生的記錄;能查詢學(xué)生的補(bǔ)考情況。三、開發(fā)環(huán)境1.VC+ 6.0 2.SQL Server 2000四、功能要求1.登陸功能2.讀取記錄3.增加記錄4.修改記錄5.刪除記錄6.查詢記錄五、實(shí)現(xiàn)方法1.該系統(tǒng)為基于對話框的程序2.用ADO的方法訪問數(shù)據(jù)庫六、系統(tǒng)設(shè)計(jì)(一)概念分析:概念結(jié)構(gòu)設(shè)計(jì)階段是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵,它通過對用戶需求進(jìn)行綜合、
11、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型設(shè)計(jì)成績管理數(shù)據(jù)庫包括學(xué)生、成績、課程、班級、年級五個(gè)關(guān)系。E-R圖六一和圖六二所示。學(xué)生班級名學(xué)號年級名課程名任課教師課程號課程名年級名年級年級號姓名總評成績成績課程班級班主任年級人數(shù)性別班級名平時(shí)成績考試成績班級人數(shù)年級主任學(xué)分學(xué)號補(bǔ)考圖六一實(shí)體及其屬性圖年級年級主任年級名年級人數(shù)所屬班級成績學(xué)生所屬班主任班級名班級人數(shù)年級名學(xué)號姓名性別班級名年級名學(xué)習(xí)課程任課教師學(xué)分課程號課程名平時(shí)成績總評成績補(bǔ)考學(xué)名課程號考試成績考試圖六二完整的實(shí)體-聯(lián)系圖(二)邏輯設(shè)計(jì):邏輯結(jié)構(gòu)是獨(dú)立于任何一種數(shù)據(jù)模型的信息結(jié)構(gòu)。邏輯結(jié)構(gòu)的任務(wù)是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)
12、好的基本E-R圖轉(zhuǎn)化為宜選用的DBMS所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu),并對其進(jìn)行優(yōu)化。設(shè)計(jì)學(xué)生成績管理數(shù)據(jù)庫,包括年級、班級、學(xué)生、課程、成績五個(gè)關(guān)系,考慮到數(shù)據(jù)庫完整性,其關(guān)系模式中對每個(gè)實(shí)體定義的屬性如下:年級表年級:(年級名,年級主任、年級人數(shù))班級表班級:(班級名,年級名,班主任、班級人數(shù))課程表課程:(課程號,課程名,任課教師,學(xué)分)學(xué)生表學(xué)生:(學(xué)號,姓名,性別,班號名、年級名)成績表成績:(學(xué)號,課程號,考試成績、平時(shí)成績、總評成績、補(bǔ)考)用戶表:用戶:(用戶名,密碼)(三)物理設(shè)計(jì):定義每個(gè)表的數(shù)據(jù)類型以及字段限制,使數(shù)據(jù)庫達(dá)到一定的完整性。1、每個(gè)表的物理設(shè)計(jì)如下: 學(xué)生:
13、字段名類型長度主碼學(xué)號int 4是姓名Char 20性別Char 2班級名Char 15年級名Char 10 成績:字段名類型長度主碼學(xué)號int 4是課程號Char 20考試成績float8平時(shí)成績float8總評成績float 8補(bǔ)考bit1課程字段名類型長度主碼課程號Char 20是課程名Char 20任課老師Char 20學(xué)分float8 班級字段名類型長度主碼班主任Char 20班級人數(shù)Smallint 2班級名Char 15是年級名Char 10 年級字段名類型長度主碼年級主任Char 20年級人數(shù)Smallint 2年級名Char 10是 用戶 字段名類型長度主碼用戶名Char 2
14、0是密碼Char 202、數(shù)據(jù)庫概要說明新建一個(gè)數(shù)據(jù)庫,名字為score中包括course,student,sc,class,grate5個(gè)數(shù)據(jù)表。下圖所示的即為本系統(tǒng)中數(shù)據(jù)庫中的數(shù)據(jù)表結(jié)構(gòu)圖,該數(shù)據(jù)表結(jié)構(gòu)圖包含系統(tǒng)所有數(shù)據(jù)表??梢郧逦胤磻?yīng)數(shù)據(jù)庫信息。3、數(shù)據(jù)關(guān)系圖:如圖所示,student表中的學(xué)號與sc表中的學(xué)號存在約束關(guān)系,sc表中的課程號與course中的課程號也存在約束關(guān)系,class中的年級名與grate中的年級名也存在約束關(guān)系。(四)部分功能實(shí)現(xiàn)代碼1、VC應(yīng)用程序連接數(shù)據(jù)庫BOOL CMyDlg:OnInitDialog()CDialog:OnInitDialog();:Co
15、Initialize(NULL);CMenu* pSysMenu = GetSystemMenu(FALSE);SetIcon(m_hIcon, TRUE);SetIcon(m_hIcon, FALSE);try m_DBCnt.CreateInstance(_uuidof(Connection); m_DBCnt-ConnectionString=driver=SQL Server;server=(local); UID=teacher;PWD=; database=score; _variant_t vs; vs.vt=VT_BSTR; vs.bstrVal=SysAllocString(
16、LPrompt);_variant_t vl; vl.vt=VT_I2; vl.iVal=adPromptAlways;m_DBCnt-Properties-GetItem(vs)-Value=vl;m_DBCnt-Open(,-1); catch(_com_error e)AfxMessageBox(無法連接數(shù)據(jù)庫!);this-EndDialog(0); _bstr_t str=m_DBCnt-ConnectionString;2、查詢學(xué)生資料void CMyDlg:Readstudent() m_list.DeleteAllItems(); _RecordsetPtr prst=NULL
17、; _bstr_t strsql(select * from v_student ORDER BY 學(xué)號 DESC); int i=0; try prst.CreateInstance(_uuidof(Recordset); if(key)prst=m_DBCnt-Execute(_bstr_t(ZSQL),NULL,adCmdText); else prst=m_DBCnt-Execute(strsql,NULL,adCmdText); _variant_t holder; if(prst-adoEOF) AfxMessageBox(沒有相關(guān)記錄!);key=false;return; wh
18、ile(!prst-adoEOF) holder=prst-GetCollect(學(xué)號); if(holder.vt!=VT_NULL)m_list.InsertItem(i,(char*)(_bstr_t)holder); holder=prst-GetCollect(姓名); if(holder.vt!=VT_NULL)m_list.SetItemText(i,1,(char*)(_bstr_t)holder); holder=prst-GetCollect(性別); if(holder.vt!=VT_NULL)m_list.SetItemText(i,2,(char*)(_bstr_t)
19、holder); holder=prst-GetCollect(年齡); if(holder.vt!=VT_NULL)m_list.SetItemText(i,3,(char*)(_bstr_t)holder); holder=prst-GetCollect(班級名); if(holder.vt!=VT_NULL)m_list.SetItemText(i,4,(char*)(_bstr_t)holder); holder=prst-GetCollect(年級名); if(holder.vt!=VT_NULL)m_list.SetItemText(i,5,(char*)(_bstr_t)hold
20、er); prst-MoveNext(); prst-Close(); key=false; catch(_com_error e) AfxMessageBox(操作異常!); return; 3、修改學(xué)生資料信息 void CMyDlg:updatestu() UpdateData(); POSITION pos=m_list.GetFirstSelectedItemPosition(); if(pos=NULL) AfxMessageBox(沒有選中記錄!); return; if(m_stu_xh=) return; CString strSql,stuxh,stuxm,stuxb,st
21、unl,stuclass,stugrate; m_STU_XH.GetWindowText(stuxh); m_STU_XM.GetWindowText(stuxm); m_STU_XB.GetWindowText(stuxb); m_STU_NL.GetWindowText(stunl); m_STU_CLASSNAME.GetWindowText(stuclass); m_STU_NIJINAME.GetWindowText(stugrate); try strSql.Format(update v_student set 姓名=%s,性別=%s,年齡=%d,班級名=%s,年級名=%s,
22、where 學(xué)號=%d, stuxm,stuxb,atoi(stunl),stuclass,stugrate,atoi(stuxh);_RecordsetPtr prst=NULL;prst.CreateInstance(_uuidof(Recordset); prst=m_DBCnt-Execute(_bstr_t(strSql),NULL,adCmdText); Readstudent(); MessageBox(修改成功!); catch(_com_error e) AfxMessageBox(操作異常或者是你所在的用戶組無此權(quán)限!); return; 4、補(bǔ)考通知單void CMyDl
23、g:Readbukaotongzhi()m_list.DeleteAllItems(); _RecordsetPtr prst=NULL; _bstr_t strsql(select * from v_bukaotongzhi); int i=0; try prst.CreateInstance(_uuidof(Recordset);/MessageBox(1); prst=m_DBCnt-Execute(strsql,NULL,adCmdText); _variant_t holder; while(!prst-adoEOF) holder=prst-GetCollect(學(xué)號); if(h
24、older.vt!=VT_NULL) m_list.InsertItem(i,(char*)(_bstr_t)holder); holder=prst-GetCollect(姓名); if(holder.vt!=VT_NULL) m_list.SetItemText(i,1,(char*)(_bstr_t)holder); holder=prst-GetCollect(班級名); if(holder.vt!=VT_NULL)m_list.SetItemText(i,2,(char*)(_bstr_t)holder); holder=prst-GetCollect(年級名); if(holder
25、.vt!=VT_NULL) m_list.SetItemText(i,3,(char*)(_bstr_t)holder); holder=prst-GetCollect(課程號); if(holder.vt!=VT_NULL)m_list.SetItemText(i,4,(char*)(_bstr_t)holder); holder=prst-GetCollect(課程名); if(holder.vt!=VT_NULL)m_list.SetItemText(i,5,(char*)(_bstr_t)holder); holder=prst-GetCollect(學(xué)分); if(holder.vt
26、!=VT_NULL) m_list.SetItemText(i,6,(char*)(_bstr_t)holder); holder=prst-GetCollect(總評成績); if(holder.vt!=VT_NULL)m_list.SetItemText(i,7,(char*)(_bstr_t)holder); prst-MoveNext(); prst-Close(); catch(_com_error e) AfxMessageBox(操作異常!); return; void CMyDlg:upbukaotongzhi() UpdateData(); _RecordsetPtr prs
27、t=NULL; prst.CreateInstance(_uuidof(Recordset); POSITION pos=m_list.GetFirstSelectedItemPosition(); if(pos=NULL) AfxMessageBox(沒有選中記錄!); return; CString strSql,xh,xm,classname,nijiname,kch,kcm,xf,zpcj; m_STU_XM.GetWindowText(xm); m_STU_CLASSNAME.GetWindowText(classname); m_STU_NIJINAME.GetWindowText
28、(nijiname); m_KC_KCH.GetWindowText(kch); m_KC_KCM.GetWindowText(kcm); m_KC_XF.GetWindowText(xf); m_XXQK_XH.GetWindowText(xh); m_XXQK_KCH.GetWindowText(kch);trystrSql.Format(update v_bukaotongzhi set 姓名=%s,班級名=%s,年級名=%s,課程名=%s,學(xué)分=%f, where 學(xué)號=%d and 課程號=%s, xm,classname,nijiname,kcm,atof(xf),atoi(xh)
29、,kch); prst=m_DBCnt-Execute(_bstr_t(strSql),NULL,adCmdText); Readbukaotongzhi(); MessageBox(修改成功!); catch(_com_error e) AfxMessageBox(操作異?;蛘呤悄闼诘挠脩艚M無此權(quán)限!); return; void CMyDlg:OnDel() CString lb; m_LB.GetLBText(m_LB.GetCurSel(),lb); if(lb=學(xué)生資料)delstu(); if(lb=課程表)delcourse(); if(lb=成績表)delsc(); if(l
30、b=班級資料)delclass(); if(lb=年級資料)delgrate(); if(lb=補(bǔ)考通知單)delbukaotongzhi();5、刪除學(xué)生信息 void CMyDlg:delstu() CString sID,strsQL;int item;_RecordsetPtr prst=NULL; prst.CreateInstance(_uuidof(Recordset); try _bstr_t strsql(select * from student); prst=m_DBCnt-Execute(strsql,NULL,adCmdText); if(!prst-BOF) prs
31、t-MoveFirst();else AfxMessageBox(表內(nèi)數(shù)據(jù)為空);return; POSITION pos=m_list.GetFirstSelectedItemPosition();if(pos=NULL) AfxMessageBox(沒有選中記錄!); return; else while(pos) item=m_list.GetNextSelectedItem(pos); sID=m_list.GetItemText(item,0); if(AfxMessageBox(是否刪除?,MB_YESNO)=IDYES)strsQL.Format(delete from v_st
32、udent where 學(xué)號=+sID+); prst=m_DBCnt-Execute(_bstr_t(strsQL),NULL,adCmdText); Readstudent(); catch(_com_error e) AfxMessageBox(操作異?;蛘呤悄闼诘挠脩艚M無此權(quán)限!); return; void CMyDlg:delsc()CString sID,strsQL;int item; _RecordsetPtr prst=NULL; prst.CreateInstance(_uuidof(Recordset); try _bstr_t strsql(select * fro
33、m v_sc); prst=m_DBCnt-Execute(strsql,NULL,adCmdText); if(!prst-BOF)prst-MoveFirst(); elseAfxMessageBox(表內(nèi)數(shù)據(jù)為空);return; POSITION pos=m_list.GetFirstSelectedItemPosition(); if(pos=NULL) AfxMessageBox(沒有選中記錄!); return; else while(pos) item=m_list.GetNextSelectedItem(pos); sID=m_list.GetItemText(item,0)
34、; if(AfxMessageBox(是否刪除?,MB_YESNO) = IDYES) strsQL.Format(delete from v_sc where 學(xué)號=%s,sID); prst=m_DBCnt-Execute(_bstr_t(strsQL),NULL,adCmdText); ReadSC(); catch(_com_error e) AfxMessageBox(操作異?;蛘呤悄闼诘挠脩艚M無此權(quán)限!); return; void CMyDlg:Clean()CString lb; m_LB.GetLBText(m_LB.GetCurSel(),lb); m_STU_XH.Se
35、tWindowText(); m_STU_XM.SetWindowText(); m_STU_XB.SetWindowText(); m_STU_NL.SetWindowText(); m_STU_CLASSNAME.SetWindowText(); m_STU_NIJINAME.SetWindowText(); m_KC_KCH.SetWindowText(); m_KC_KCM.SetWindowText(); m_KC_RKLS.SetWindowText(); m_KC_XF.SetWindowText(); m_CLA_NAME.SetWindowText(); m_CLA_NIJI
36、NAME.SetWindowText(); m_CLA_NUM.SetWindowText(); m_CLA_HEAD.SetWindowText(); m_XUQK_KSCJ.SetWindowText(); m_XXQK_XH.SetWindowText(); m_XXQK_KCH.SetWindowText(); m_XXQK_PSCJ.SetWindowText(); m_XXQK_BK.SetCheck(0); m_GRATE_NAME.SetWindowText(); m_GRATE_NUM.SetWindowText(); m_GRATE_HEAD.SetWindowText()
37、; void CMyDlg:cxinit(CString s) CString lb; m_LB.GetLBText(m_LB.GetCurSel(),lb); LONG lStyle = m_list.SendMessage (LVM_GETEXTENDEDLISTVIEWSTYLE); lStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES| LVS_EX_HEADERDRAGDROP; m_list.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0,(LPARAM)lStyle); m_list.SetEx
38、tendedStyle(lStyle); int nWidth=100; int nColumnCount = m_list.GetHeaderCtrl()-GetItemCount(); m_dy.EnableWindow(true); if(zcxlb=學(xué)生資料) m_LB.SetCurSel(0); for (int i=0;i nColumnCount;i+) m_list.DeleteColumn(0); Clean(); m_sc.EnableWindow(TRUE); m_xg.EnableWindow(TRUE); m_list.EnableWindow(TRUE); m_li
39、st.SetRedraw(TRUE);m_list.UpdateData(TRUE); m_list.InsertColumn(0,學(xué)號,LVCFMT_LEFT,nWidth); m_list.InsertColumn(1,姓名,LVCFMT_LEFT,nWidth); m_list.InsertColumn(2,性別,LVCFMT_LEFT,nWidth); m_list.InsertColumn(3,年齡,LVCFMT_LEFT,nWidth); m_list.InsertColumn(4,班級名,LVCFMT_LEFT,nWidth); m_list.InsertColumn(5,年級名
40、,LVCFMT_LEFT,nWidth); Readstudent(); if(zcxlb=課程表) m_LB.SetCurSel(1); for (int i=0;i nColumnCount;i+) m_list.DeleteColumn(0);Clean(); m_sc.EnableWindow(TRUE); m_xg.EnableWindow(TRUE); m_list.EnableWindow(TRUE); m_list.DeleteAllItems();m_list.Update(TRUE); m_list.InsertColumn(0,課程號,LVCFMT_LEFT,nWidth
41、); m_list.InsertColumn(1,課程名,LVCFMT_LEFT,nWidth); m_list.InsertColumn(2,任課老師,LVCFMT_LEFT,nWidth); m_list.InsertColumn(3,學(xué)分,LVCFMT_LEFT,nWidth); Readcourse(); if(zcxlb=成績表) m_LB.SetCurSel(2); for (int i=0;i nColumnCount;i+) m_list.DeleteColumn(0); Clean();m_sc.EnableWindow(TRUE); m_xg.EnableWindow(TR
42、UE); m_list.EnableWindow(TRUE); m_list.InsertColumn(0,學(xué)號,LVCFMT_LEFT,nWidth); m_list.InsertColumn(1,課程號,LVCFMT_LEFT,nWidth); m_list.InsertColumn(2,考試成績,LVCFMT_LEFT,nWidth); m_list.InsertColumn(3,平時(shí)成績,LVCFMT_LEFT,nWidth); m_list.InsertColumn(4,總評成績,LVCFMT_LEFT,nWidth); m_list.InsertColumn(5,補(bǔ)考,LVCFMT
43、_LEFT,nWidth); ReadSC(); if(zcxlb=班級資料) m_LB.SetCurSel(3); for (int i=0;i nColumnCount;i+) m_list.DeleteColumn(0); Clean(); m_sc.EnableWindow(TRUE); m_xg.EnableWindow(TRUE); m_list.EnableWindow(TRUE); m_list.InsertColumn(0,班級名,LVCFMT_LEFT,nWidth); m_list.InsertColumn(1,年級名,LVCFMT_LEFT,nWidth); m_list.InsertColumn(2,班級人數(shù),LVCFMT_LEFT,nWidth); m_list.InsertColumn(3,班主任,LVCFMT_LEFT,nWidth); Readclass(); if(lb=年級資料) m_LB.SetCurSel(4); for (int i=0;i Execute(_bstr_t(strSql),NULL,adCmdText); MessageBox(添加成功!); catch(_com_error e) AfxMessageBox(操作異?;蛘呤悄闼诘挠脩艚M無此權(quán)限!)
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)攻擊防御及響應(yīng)方案
- 電力設(shè)備及安裝工程承包合同協(xié)議
- 環(huán)境評估與治理專業(yè)證明書(8篇)
- 文化旅游推廣項(xiàng)目合作協(xié)議
- 人工智能技術(shù)合作開發(fā)項(xiàng)目合同
- 農(nóng)產(chǎn)品銷售與供應(yīng)鏈優(yōu)化合作協(xié)議
- 詳盡的社會保險(xiǎn)繳納及工作證明(7篇)
- 技術(shù)服務(wù)合作合同書
- 2025汽車融資租賃合同模板
- 2025閑置土地承包合同模板
- 2025江蘇中考:物理高頻考點(diǎn)
- 餐飲抽成合同協(xié)議書
- 2025年江西省安福縣事業(yè)單位公開招聘輔警36名筆試題帶答案
- 大神心理測試題及答案
- 2025初級《銀行業(yè)法律法規(guī)與綜合能力》高分必會試題庫1000題-單選500題
- 低值易耗品試題及答案
- 2025春季學(xué)期國開河南電大本科《行政管理理論與實(shí)踐專題講座》一平臺無紙化考試(作業(yè)練習(xí)+我要考試)試題及答案
- 2025年新高考地區(qū)數(shù)學(xué)名校地市選填壓軸題好題匯編(八)(解析版)
- 全球汽車產(chǎn)業(yè)發(fā)展現(xiàn)狀與趨勢
- 機(jī)械制造質(zhì)量整改報(bào)告范文
- 2025貴州畢節(jié)市七星關(guān)區(qū)招聘城市社區(qū)工作者186人筆試備考題庫及答案解析
評論
0/150
提交評論