【正文】
參考文獻(xiàn) 1 陳 明 . 軟件工程學(xué)教程 .科技出版社, 2020 2 薩師煊,王珊 . 數(shù)據(jù)庫系統(tǒng)概論 . 第三版 . 高等教育出版社, 2020 3 飛思科技產(chǎn)品研發(fā)中心 . visual basic 數(shù)據(jù)庫應(yīng)用開發(fā) .電子工業(yè)出版社, 2020 4 飛思科技產(chǎn)品研發(fā)中心 . visual basic 開發(fā)者手冊 . 電子工業(yè)出版社 , 2020 5 申 旻 . visual basic 高手突破 . 清華大學(xué)出版社, 2020, 302 6 Steve Teixeira, Xaviver Pacheco 著,龍勁松, 王瑜,謝尚書譯 . visual basic 開發(fā)人員指南 . 機(jī)械工業(yè)出版社 .2020 7 喬林 .參透 Delphi/ Kylix . 中國鐵道出版社 .2020 8 李維 .Inside 深入核心 VCL 架構(gòu)剖析 . 電子工業(yè)出版社 .2020 9 張立科編寫組 .Windows API 函數(shù)參考手冊 .人民郵電出版社 .2020 嚴(yán)蔚敏,吳偉民 .數(shù)據(jù)結(jié)構(gòu) .第二版 .清華大學(xué)出版社 .2020 10 王珍 玲 。 在這里我還要感謝我們宿舍的其它 5 個(gè)同學(xué)。 運(yùn)行結(jié)果證明,本學(xué)校教師信息 管理系統(tǒng) 極大提高了工作效率,節(jié)省了人力和物力,最終 滿足 學(xué)校管理、學(xué)校員工工作 的需要 ,同時(shí)也成為現(xiàn)代化學(xué)校管理的標(biāo)志 致 謝 我首先感謝我的指導(dǎo)老師呂老師,在他嚴(yán)格的要求下我懂得了開發(fā)軟件要有一種極其認(rèn)真負(fù)責(zé)的態(tài)度。開發(fā)本系統(tǒng)的過程中,首先 要 對 高校教務(wù) 信息管理進(jìn)行系統(tǒng)調(diào)研, 熟悉 學(xué)校教 師的人事、檔案 管理 的 流程 、步驟;其次在系統(tǒng)需求分析過程中,要透過現(xiàn)象看本質(zhì),敏銳觀察到學(xué)校教師管理中存在的各種問題,并在總體設(shè)計(jì)把握好對問題的分析、理解,進(jìn)而解決問題;選用開發(fā)工具要選用自己最熟悉、應(yīng)用較多的開發(fā)工具,本系統(tǒng)開發(fā)選用 MS Visual Basic ,其具有語言簡單、功能強(qiáng)大、組件眾多的優(yōu)點(diǎn)。 Extreme Programming 更是把測試推到了極限的位置,一切軟件開發(fā)活動(dòng)都要從首先編寫測試代碼開始。隨著軟件危機(jī)的頻頻出現(xiàn)以及人們對于軟件本質(zhì)的進(jìn)一步認(rèn)識(shí),測試的地位得到了前所未有的提高。 結(jié)構(gòu)化查詢語言 SQL( Structured Query Language)是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語言,其功能包括查詢、操縱、定義和控制四個(gè)方面,是一個(gè)通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言。在數(shù)據(jù)庫發(fā)展的歷史上,最重要的成就就是關(guān)系模型。 \幫助文檔 .DOC, , C:\, 1) END IF END SUB PRIVATE SUB XTGL_CLICK() END SUB PRIVATE SUB ZHCJCX_CLICK() END SUB PRIVATE SUB ZNCJSR_CLICK() VBMODAL, MDIFORM1 END SUB 第四章 數(shù)據(jù)庫的設(shè)計(jì) : : : : : : : 數(shù)據(jù)庫概念和發(fā)展 關(guān)系數(shù)據(jù)庫是目前各類數(shù)據(jù)庫中最重要、最流行的數(shù)據(jù)庫,他應(yīng)用數(shù)學(xué)方法來處理數(shù)據(jù)庫數(shù)據(jù),是目前使用最廣泛的數(shù)據(jù)庫系統(tǒng)。 然后將它存放在應(yīng)用程序所在的目錄。 \幫助文檔 .DOC) = THEN MSGBOX 幫助文件丟失,請查找 幫助文檔 .DOC 文件! amp。 END IF END IF END IF IF NOT (DD(0) OR DD(1) OR DD(2) OR DD(3)) THEN MSGBOX 請?jiān)O(shè)置查詢方式! , VBOKONLY + VBEXCLAMATION, 警告 EXIT SUB END IF = = ADCMDTEXT = TXTSQL SET = ADODC1 END SUB PRIVATE SUB FORM_LOAD() CALL RESIZEINIT(ME) END SUB PRIVATE SUB FORM_RESIZE() CALL RESIZEFORM(ME) 39。 amp。 職稱 = 39。 39。 amp。 END IF END IF END IF IF CHECK1(2).VALUE THEN IF TRIM() = THEN MSGBOX 職稱不能為空 , VBOKONLY + VBEXCLAMATION, 警告 EXIT SUB ELSE DD(2) = TRUE IF DD(0) OR DD(1) THEN TXTSQL = TXTSQL amp。 amp。 姓名 = 39。 39。 amp。 END IF END IF IF CHECK1(1).VALUE = 1 THEN IF TRIM() = THEN MSGBOX 姓名不能為空 , VBOKONLY + VBEXCLAMATION, 警告 EXIT SUB ELSE DD(1) = TRUE IF DD(0) = TRUE THEN TXTSQL = TXTSQL amp。 TRIM() amp。 部門 = 39。 ) = SQLSTRING END IF = FALSE NEXT I MSGBOX 添加存儲(chǔ)成功! EXIT SUB ERR: MSGBOX 存儲(chǔ)錯(cuò)誤! CALL EXECERR(DATE, , , , ) END SUB PRIVATE SUB FORM_LOAD() CALL RESIZEINIT(ME) SET RSCOUNT = NEW DIM RSBJ AS SET RSBJ = NEW 班級表 , CON, ADOPENSTATIC, ADLOCKPESSIMISTIC, ADCMDTABLE = 請選擇 ... DO WHILE NOT RSBJ!班級 LOOP IF PERMISSION 0 THEN = FALSE END SUB PRIVATE SUB FORM_RESIZE() CALL RESIZEFORM(ME) 39。, amp。 TXTZF(I + 70).TEXT amp。 ,39。 , amp。 , amp。 , amp。 , amp。 , amp。 , amp。, amp。 LABXK(I).CAPTION amp。,39。 amp。,39。 amp。 ,39。 , amp。 ( amp。 amp。 39。 amp。 amp。 LABXK(I).CAPTION amp。 = amp。 AND A. amp。 amp。 AND = 39。 TXTZF(I).TEXT * , CON, ADOPENSTATIC, , ADCMDTEXT TXTZF(10 + I).TEXT = RSCOUNT!YWJ TXTZF(20 + I).TEXT = RSCOUNT!YWJ / * 100 SELECT COUNT(*) AS YWY FROM 成績表 AS A INNER JOIN 學(xué)籍 表 AS B ON = WHERE LIKE amp。 LABXK(I).CAPTION amp。 39。 amp。 amp。 39。 amp。 amp。 39。 amp。 LABXK(I).CAPTION amp。 = amp。 AND A. amp。 amp。 AND = 39。 AND LIKE amp。 amp。 TXTZF(I).TEXT * , CON, ADOPENSTATIC, , ADCMDTEXT TXTZF(10 + I).TEXT = RSCOUNT!YWJ TXTZF(20 + I).TEXT = RSCOUNT!YWJ / * 100 SELECT COUNT(*) AS YWY FROM 成績表 AS A INNER JOIN 學(xué)籍表 AS B ON = WHERE = 39。 LABXK(I).CAPTION amp。 39。 amp。 amp。 39。 amp。 QUERY, CON, ADOPENSTATIC, , ADCMDTEXT WITH PICRS DO WHILE NOT .EOF IF CINT(PICRS!CJ) = CINT(TXTFSD(0).TEXT) THEN ICJ(0) = ICJ(0) + 1 COMLST(0).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(1).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(0).TEXT) THEN ICJ(1) = ICJ(1) + 1 COMLST(1).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(2).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(1).TEXT) THEN ICJ(2) = ICJ(2) + 1 COMLST(2).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(3).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(2).TEXT) THEN ICJ(3) = ICJ(3) + 1 COMLST(3).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(4).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(3).TEXT) THEN ICJ(4) = ICJ(4) + 1 COMLST(4).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(5).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(4).TEXT) THEN ICJ(5) = ICJ(5) + 1 COMLST(5).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(6).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(5).TEXT) THEN ICJ(6) = ICJ(6) + 1 COMLST(6).ADDITEM PICRS!XM END IF IF CINT(PICRS!CJ) = CINT(TXTFSD(7).TEXT) AND CINT(PICRS!CJ) CINT(TXTFSD(6).TEXT) THEN