學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)報(bào)告_第1頁
學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)報(bào)告_第2頁
學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)報(bào)告_第3頁
學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)報(bào)告_第4頁
學(xué)生成績(jī)管理系統(tǒng)設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.南 京 理 工 大 學(xué)數(shù)據(jù)庫課程設(shè)計(jì)作 者:學(xué) 號(hào):學(xué)院:計(jì)算機(jī)科學(xué)與工程學(xué)院專業(yè):網(wǎng)絡(luò)工程題 目:學(xué)生成績(jī)管理系統(tǒng)指導(dǎo)老師指導(dǎo)老師:衷宜2013 年 9 月目錄一、概述 3二、需求分析4三、系統(tǒng)設(shè)計(jì)9四、系統(tǒng)實(shí)施15五、系統(tǒng)測(cè)試29六、收獲和體會(huì)33七、附錄34八、參考文獻(xiàn)34一、概述1、項(xiàng)目背景當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中離不開信息處理,這正是計(jì)算機(jī)被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境。計(jì)算機(jī)的最大好處在于利用它能夠進(jìn)行信息管理。使用計(jì)算機(jī)進(jìn)行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對(duì)于復(fù)雜的信息管理,計(jì)算機(jī)能夠充分發(fā)揮它的優(yōu)越性。計(jì)算機(jī)進(jìn)行信息管理與信息管理

2、系統(tǒng)的開發(fā)密切相關(guān),系統(tǒng)的開發(fā)是系統(tǒng)管理的前提。目前隨著個(gè)大高校的擴(kuò)招,在校學(xué)生數(shù)量龐大。擁有一款好的學(xué)習(xí)成績(jī)管理系統(tǒng)軟件,對(duì)于加強(qiáng)對(duì)在校生的成績(jī)管理起到積極作用。并且,可以為在校生隨時(shí)查閱自己的成績(jī)信息、教師錄入成績(jī)、管理員進(jìn)行信息維護(hù)等提供方便,為學(xué)校節(jié)省大量人力資源本系統(tǒng)就是為了管理好學(xué)生成績(jī)信息而設(shè)計(jì)的。2、編寫目的首先,學(xué)生成績(jī)管理是一個(gè)學(xué)校不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的管理者和學(xué)生以及學(xué)生家長(zhǎng)來說都至關(guān)重要,所以一個(gè)良好的學(xué)生成績(jī)管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。學(xué)生成績(jī)管理系統(tǒng)對(duì)學(xué)校加強(qiáng)學(xué)生成績(jī)管理有著極其重要的作用.作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)

3、生成績(jī)信息進(jìn)行管理,具有手工管理所無法比擬的優(yōu)點(diǎn)。例:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高管理者管理的效率,也是學(xué)校走向科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)設(shè)計(jì)這樣一套學(xué)生成績(jī)管理軟件成為很有必要的事情。其次,初步掌握軟件開發(fā)的流程,熟悉delphi與SQL的使用方法,達(dá)到能夠較好的運(yùn)用兩者制成能實(shí)現(xiàn)初步功能的管理系統(tǒng),鍛煉自己的動(dòng)手能力,同時(shí),在合作中更好的與同學(xué)交流,這些都是必要的。最后,自己動(dòng)手編程序,能更好的提升對(duì)本專業(yè)的愛好,初步了解本專業(yè)的發(fā)展方向,為將來的畢業(yè)與找工作奠定基礎(chǔ)。3、軟件定義該學(xué)生管理管理信息系統(tǒng)

4、是基于Internet/Intranet及C+技術(shù),建立以以數(shù)據(jù)庫為后臺(tái)核心應(yīng)用、以服務(wù)為目的信息平臺(tái),對(duì)資源進(jìn)行科學(xué)的加工整序和管理維護(hù),為教學(xué)和科學(xué)研究提供文獻(xiàn)信息保障和提高管理學(xué)生成績(jī)的效率而設(shè)計(jì)的系統(tǒng)。4、開發(fā)環(huán)境本系統(tǒng)采用windows7,XP作為操作平臺(tái),前臺(tái)開發(fā)工具采用delphi7.0,數(shù)據(jù)庫管理采用SQL SERVER 2008。二、需求分析1、問題的提出為了提高高校學(xué)生成績(jī)信息的管理效率,方便學(xué)生和教師對(duì)學(xué)生成績(jī)信息進(jìn)行查詢、方便學(xué)校里面管理員去管理和查詢學(xué)生信息,建立一個(gè)學(xué)生成績(jī)管理系統(tǒng),使學(xué)生信息管理工作規(guī)范化,系統(tǒng)化,程序化,避免學(xué)生成績(jī)管理的隨意性,提高信息處理的速

5、度和準(zhǔn)確性,能夠及時(shí)、準(zhǔn)確、有效的查詢和修改學(xué)生信息是必須而且十分迫切的工作。本次課程設(shè)計(jì)題目為學(xué)生成績(jī)管理系統(tǒng),涉及成績(jī)管理系統(tǒng)的登錄界面、老師對(duì)學(xué)生成績(jī)的查詢、學(xué)生對(duì)學(xué)生成績(jī)的查詢、教務(wù)員對(duì)學(xué)生成績(jī)的增刪改查統(tǒng)計(jì)等內(nèi)容。本功能實(shí)現(xiàn)對(duì)學(xué)生信息、教師信息情況信息的管理和統(tǒng)計(jì)、課程信息和成績(jī)信息查看及維護(hù)。2、系統(tǒng)的業(yè)務(wù)功能分析學(xué)生成績(jī)管理系統(tǒng)應(yīng)當(dāng)將學(xué)生與教務(wù)員區(qū)分開來,因?yàn)樵?、刪、改、統(tǒng)計(jì)的權(quán)限應(yīng)當(dāng)只有教務(wù)員才擁有,學(xué)生只能查詢與自己相關(guān)的記錄,老師查詢自己所授課程的記錄,而教務(wù)員則錄入數(shù)據(jù),進(jìn)行增刪改與統(tǒng)計(jì)。另外,在日常學(xué)習(xí)生活中,為了方便老師和同學(xué)了解情況,需要提供平均分、最高低分、排名等

6、供老師和學(xué)生查詢。具體分析:按照教師,學(xué)生,管理員三種角色設(shè)計(jì)系統(tǒng)功能。學(xué)生要能夠查詢自己所學(xué)課程的成績(jī),查看自己不同課程的成績(jī)、GPA以及排名,查看個(gè)人信息、修改個(gè)人登錄密碼等。教師要實(shí)現(xiàn)對(duì)自己所教授課程中所有學(xué)生成績(jī)的查詢、以及對(duì)自己所教班上同學(xué)的各分?jǐn)?shù)段成績(jī)單人數(shù)成績(jī)的查詢排序功能,個(gè)人資料的修改和修改個(gè)人登錄密碼等。管理員要能夠?qū)崿F(xiàn)對(duì)管理員、教師、學(xué)生基本信息的增加、刪除、修改、查詢以及實(shí)現(xiàn)對(duì)學(xué)生成績(jī)的增加、刪除按學(xué)號(hào)、按班級(jí)、按課程號(hào)、按院系、修改、查詢按學(xué)號(hào)、按班級(jí)、按課程號(hào)、按院系和數(shù)據(jù)統(tǒng)計(jì)分析以及對(duì)結(jié)果提供打印功能等。個(gè)人信息3、系統(tǒng)業(yè)務(wù)流程分析修改密碼個(gè)人信息修改密碼菜 單菜

7、 單退出管理員退出管理員管理員信息管理員信息教師信息信 息 管 理教師信息信 息 管 理登陸次數(shù)必須小于三學(xué)生信息登陸次數(shù)必須小于三學(xué)生信息成績(jī)查詢成 績(jī) 管 理成績(jī)查詢成 績(jī) 管 理成績(jī)管理成績(jī)管理成績(jī)統(tǒng)計(jì)系統(tǒng)登錄學(xué)生管理系統(tǒng)成績(jī)統(tǒng)計(jì)系統(tǒng)登錄學(xué)生管理系統(tǒng)顯示制作人和版本幫 助顯示制作人和版本幫 助個(gè)人信息個(gè)人信息修改密碼菜 單修改密碼菜 單退出退出成 績(jī) 管 理教師成 績(jī) 管 理教師成績(jī)查詢成績(jī)查詢顯示制作人和版本顯示制作人和版本幫 助個(gè)人信息幫 助個(gè)人信息修改密碼菜 單修改密碼菜 單退出學(xué)生退出學(xué)生成績(jī)查詢成 績(jī) 管 理顯示制作人和版本幫 助成績(jī)查詢成 績(jī) 管 理顯示制作人和版本幫 助4、

8、完成的功能系統(tǒng)的功能模塊劃分學(xué)生成績(jī)管理系統(tǒng)包括八個(gè)模塊:系統(tǒng)登錄、學(xué)生基本信息管理、教師基本信息管理、管理員基本信息管理、學(xué)生成績(jī)信息查詢、學(xué)生成績(jī)信息管理,學(xué)生成績(jī)信息統(tǒng)計(jì),系統(tǒng)退出。1、系統(tǒng)登錄模塊1用戶人員在登錄界面中輸入用戶名與密碼。2通過用戶名與數(shù)據(jù)庫里的用戶表相比配,將學(xué)生、教師與管里員區(qū)分開,三者各自進(jìn)入自己的頁面,初始密碼為:000000,登錄成功后,可以修改密碼。3三者擁有各自權(quán)限,分別擁有不同的功能。2、學(xué)生基本信息管理:管理員對(duì)所有學(xué)生信息進(jìn)行增刪改查,學(xué)生只能查詢自己的基本信息。3、教師基本信息管理:管理員對(duì)所有教師信息進(jìn)行增刪改查,學(xué)生只能查詢自己的基本信息。4、管

9、理員基本信息管理:管理員對(duì)所有管理員信息進(jìn)行增刪改查。5、學(xué)生成績(jī)信息查詢:管理員查詢功能:可以按學(xué)號(hào)、班級(jí)、院系、教師工號(hào)等對(duì)學(xué)生成績(jī)分別進(jìn)行查詢、查某門課程的排名、最高分、最低分、績(jī)點(diǎn)、不及格人數(shù)等、查某班級(jí)某科目分?jǐn)?shù)段的人數(shù)。教師查詢功能:查詢所教課程的最高分、最低分、各分?jǐn)?shù)段人數(shù)、不及格人數(shù)等。學(xué)生查詢功能:查某學(xué)生所學(xué)課程的排名、最高分、最低分、績(jī)點(diǎn)、不及格人數(shù)等。6、學(xué)生成績(jī)信息管理:管理員對(duì)學(xué)生成績(jī)進(jìn)行增刪改查。7、學(xué)生成績(jī)信息統(tǒng)計(jì):按學(xué)號(hào)、班級(jí)、院系、教師工號(hào)等分別進(jìn)行統(tǒng)計(jì),并對(duì)結(jié)果提供打印能。8、退出程序:退出該程序。5、數(shù)據(jù)流程圖數(shù)據(jù)流圖信息管理操作員、教師、學(xué)生查詢個(gè)人信

10、息管 理 員學(xué) 生信息管理操作員、教師、學(xué)生查詢個(gè)人信息管 理 員學(xué) 生成績(jī)管理增刪改查學(xué)生成績(jī)管理系統(tǒng)成績(jī)管理增刪改查學(xué)生成績(jī)管理系統(tǒng)查詢個(gè)人成績(jī)、GPA查詢個(gè)人成績(jī)、GPA成績(jī)統(tǒng)計(jì)、打印成績(jī)統(tǒng)計(jì)、打印查詢課程成績(jī)情況查詢個(gè)人信息查詢課程成績(jī)情況查詢個(gè)人信息教 師教 師6、數(shù)據(jù)字典.數(shù)據(jù)流學(xué)院信息,包括學(xué)院編號(hào),學(xué)院名稱等信息。班級(jí)信息,包括班級(jí)編號(hào),學(xué)院編號(hào)等信息。學(xué)生信息,包括學(xué)生編號(hào),學(xué)生姓名,性別,班級(jí),聯(lián)系方式等信息。教師信息,包括教師工號(hào),教師姓名,性別,學(xué)院編號(hào),聯(lián)系方式等信息。管理員信息,包括管理員編號(hào),管理員姓名,性別等信息。用戶信息,包括用戶名,登錄密碼等信息。課程信息,

11、包括課程號(hào),課程名稱,學(xué)分,學(xué)時(shí),教師工號(hào)等信息。 .數(shù)據(jù)存儲(chǔ)成績(jī)表信息,包括學(xué)生編號(hào),課程編號(hào),課程績(jī)點(diǎn),課程成績(jī)等信息。課程安排信息,包括課程編號(hào),課程名稱,教師工號(hào)等信息。administrorE/R圖:administroradmininameadmininoadmininameadmininoownsownsclassnameclassnameownsdepartmentclassnoclassownsdepartmentclassnoclassdepartiddepartidownsownsownsownsusernotnousernameownsusernotnousername

12、ownsdepartidsname snodepartidsname snoteacherownsteacherownstnameuserownssexstudenttnameuserownssexstudentteach ofcreditStudy ofdepartidteach ofcreditStudy ofdepartidsexphonephonesexphonephonectimecoursegrade ofctimecoursegrade ofgradegradetnocnocnameownstnocnocnameownsGPAscoreGPAscoresnocnamecnosno

13、cnamecno三、系統(tǒng)設(shè)計(jì)1、數(shù)據(jù)表:、數(shù)據(jù)庫的關(guān)系模式:student;teacher;course;score;administroradminino,adimniname,sex;department;class;useruserno,password;屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值snocharYesNOT NULL學(xué)號(hào)snamechar20noNOT NULL姓名Nonamesexchar10noNOT NULL性別classnocharnoNOT NULL班級(jí)號(hào)departidcharnoNOT NULL院系號(hào)外鍵phonechar20noNULL聯(lián)系方式、表的物理設(shè)

14、計(jì):表一學(xué)生信息表studentCreate table studentsno char primary key,sname char20 not null default Noname,sex char10 not null ,classno char foreign key references class ,departid char foreign key references department,phone char20;表二教師信息表teacher屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值tnocharYesNOT NULL教師工號(hào)tnamechar10noNOT NULL教師姓

15、名NonamedepartidcharnoNOT NULL院系號(hào)外鍵sexcharnoNOT NULL性別phonechar11noNULL聯(lián)系方式Create table studenttno char primary key,tname char10 not null default Noname,sex char10 not null ,departid char10 forgein key refrences department,phone char20;表三課程信息表course屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值cnocharYesNOT NULL課程號(hào)cnamecharn

16、oNOT NULL課程名creditchar10noNOT NULL學(xué)分ctimechar10noNOT NULL學(xué)時(shí)數(shù)tnocharYesNOT NULL教師工號(hào)Create table studentcno char ,cname char20 not null,credi char10 not null ,ctime char not null,tno char ,primary key;表四學(xué)生成績(jī)表score屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值snocharYesNOT NULL學(xué)號(hào)snamecharnoNOT NULL姓名NonamecnocharYesNOT NULL課程號(hào)

17、cnamechar20noNOT NULL課程名gradecharnoNOT NULL成績(jī)GPAFloatnoNULLGPACreate table scoresno char ,sname char20 not null,cno char10,cname char20 not null,Score char not null,GPA float,primary key;表五管理員信息表administror屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值admininocharYesNOT NULL工號(hào)admininameChar20noNOT NULL姓名NonamesexcharnoNOT N

18、ULL性別Create table studentadminino char primary key,admininame char20 not null default Noname,sex char not null;Admininoadmininamesex200000張娜女200001王強(qiáng)男表六院系表department屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值departidcharyesNOT NULL院系號(hào)departnamechar20noNOT NULL院系名Create table studentdepartid char primary key,departname ch

19、ar20 not null;表七班級(jí)表class屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值departidcharnoNOT NULL院系號(hào)外鍵classnochar10yesNOT NULL班級(jí)號(hào)classnamechar10noNOT NULL班級(jí)名稱Create table classdepartid char foreign key references department,classno char10primary key ,classname char10 not null;表八用戶表user屬性名數(shù)據(jù)類型是否為主鍵是否為空說明缺省值usernoCharyesNOT NULL用戶

20、名passwordChar6noNOT NULL密碼000000Create table userusernochar primary key,passwordchar6not null;2、視圖,索引,數(shù)據(jù)庫權(quán)限:這些在這個(gè)學(xué)生成績(jī)管理系統(tǒng)中沒有用到。3、軟件功能設(shè)計(jì)、系統(tǒng)的結(jié)構(gòu)圖修改密碼退出成績(jī)查詢顯示制作人和版本退出修改密碼成績(jī)查詢個(gè)人信息顯示制作人和版本個(gè)人信息幫 助成 績(jī) 管 理菜 單幫 助菜 單成 績(jī) 管 理成績(jī)統(tǒng)計(jì)顯示制作人和版本成績(jī)管理學(xué)生信息成績(jī)查詢管理員信息教師信息退出修改密碼個(gè)人信息幫 助成 績(jī) 管 理信 息 管 理菜 單學(xué)生教師管理員系統(tǒng)登錄學(xué)生管理系統(tǒng)登陸次數(shù)必須小于

21、三修改密碼退出成績(jī)查詢顯示制作人和版本退出修改密碼成績(jī)查詢個(gè)人信息顯示制作人和版本個(gè)人信息幫 助成 績(jī) 管 理菜 單幫 助菜 單成 績(jī) 管 理成績(jī)統(tǒng)計(jì)顯示制作人和版本成績(jī)管理學(xué)生信息成績(jī)查詢管理員信息教師信息退出修改密碼個(gè)人信息幫 助成 績(jī) 管 理信 息 管 理菜 單學(xué)生教師管理員系統(tǒng)登錄學(xué)生管理系統(tǒng)登陸次數(shù)必須小于三、功能表:學(xué) 生 成 績(jī) 管 理 系 統(tǒng)身份功能模塊細(xì)分模塊功能具體描述管 理 員菜單個(gè)人信息顯示登錄管理員的個(gè)人信息工號(hào)、姓名、性別修改密碼管理員修改自己的登錄密碼退出管理員退出整個(gè)系統(tǒng)信息管理管理員信息對(duì)所有管理員的信息進(jìn)行增刪改查教師信息對(duì)所有教師的信息進(jìn)行增刪改查學(xué)生信息

22、對(duì)所有學(xué)生的信息進(jìn)行增刪改查成績(jī)管理成績(jī)查詢可以按學(xué)號(hào)、班級(jí)、院系、教師工號(hào)等分別進(jìn)行查詢查某學(xué)生所學(xué)課程的排名、最高分、最低分、績(jī)點(diǎn)、不及格人數(shù)等查某班級(jí)某科目分?jǐn)?shù)段的人數(shù)成績(jī)管理對(duì)學(xué)生成績(jī)進(jìn)行增刪改查成績(jī)統(tǒng)計(jì)按學(xué)號(hào)、班級(jí)、院系、教師工號(hào)等分別進(jìn)行統(tǒng)計(jì)對(duì)結(jié)果提供打印能幫助顯示該系統(tǒng)的制作人和版本教 師菜單個(gè)人信息顯示登錄教師個(gè)人信息工號(hào)、姓名、性別、院系號(hào)、聯(lián)系方式修改密碼教師修改自己的登錄密碼退出教師退出整個(gè)系統(tǒng)成績(jī)管理成績(jī)查詢查詢所教課程的最高分、最低分、各分?jǐn)?shù)段人數(shù)、不及格人數(shù)等成績(jī)統(tǒng)計(jì)按學(xué)號(hào)、班級(jí)、院系、教師工號(hào)等分別進(jìn)行統(tǒng)計(jì)幫助顯示該系統(tǒng)的制作人和版本學(xué) 生菜單個(gè)人信息顯示登錄學(xué)生

23、個(gè)人信息學(xué)號(hào)、姓名、性別、班級(jí)號(hào)、院系號(hào)、聯(lián)系方式修改密碼學(xué)生修改自己的登錄密碼退出學(xué)生退出整個(gè)系統(tǒng)成績(jī)管理成績(jī)查詢查某學(xué)生所學(xué)課程的排名、最高分、最低分、績(jī)點(diǎn)、不及格人數(shù)等幫助顯示該系統(tǒng)的制作人和版本、功能描述:同功能表。四、系統(tǒng)實(shí)施、系統(tǒng)的界面設(shè)計(jì):1、登陸界面2、密碼修改3、個(gè)人信息4、操作頁面5、信息管理6、成績(jī)查詢7、成績(jī)管理8、成績(jī)統(tǒng)計(jì)、事件的設(shè)計(jì)過程:運(yùn)行軟件進(jìn)入主界面,在主界面登錄進(jìn)入各自操作主界面。學(xué)生登錄后可在登錄界面進(jìn)行成績(jī)查詢、個(gè)人信息查詢及密碼修改。教師登錄后可在登錄界面進(jìn)行功能選擇來完成自己所選擇的查詢與維護(hù)。管理員登錄后可在登錄界面點(diǎn)擊各頁面標(biāo)簽選擇功能進(jìn)入相應(yīng)頁

24、面。、主要代碼描述:1、登錄procedure TfrmLogin.btnOKClick;var sSQL: string;begin if Trim = then begin gf_MessageBox; Edit1.SetFocus; Exit; end else if Trim = then begin gf_MessageBox; Edit2.SetFocus; Exit; end; iErrorCount := iErrorCount + 1; sSQL := select a.userno,a.password,b.tname,b.usertype + from user a +

25、left join b on a.userno = b.tno + where a.userno = + QuotedStrTrim + and a.password = + QuotedStrTrim; gf_OpenSQL; if DM.aqPublic.IsEmpty then begin if iErrorCount = 3 then begin gf_MessageBox; Application.Terminate; end; gf_MessageBox賬號(hào)或密碼錯(cuò)誤,請(qǐng)重試!還剩 + IntToStr + 次將自動(dòng)關(guān)閉程序!,MB_OK; Edit1.SelectAll; Edi

26、t1.SetFocus; end else begin gr_LoginUser.sUserID := DM.aqPublic.FieldByName.AsString; gr_LoginUser.sUserName := DM.aqPublic.FieldByName.AsString; gr_LoginUser.iType := DM.aqPublic.FieldByName.AsInteger; SetLoginInfo; Self.Hide; Application.CreateForm; case gr_LoginUser.iType of 0: begin frmStuSource

27、.sbMain.Panels0.Text := 工號(hào): + gr_LoginUser.sUserID; frmStuSource.sbMain.Panels1.Text := 姓名: + gr_LoginUser.sUserName; frmStuSource.sbMain.Panels2.Text := 登錄身份:管理員; end; 1: begin frmStuSource.S1.Visible := False; frmStuSource.N3.Visible := False; frmStuSource.N10.Visible := False; frmStuSource.sbMain

28、.Panels0.Text := 工號(hào): + gr_LoginUser.sUserID; frmStuSource.sbMain.Panels1.Text := 姓名: + gr_LoginUser.sUserName; frmStuSource.sbMain.Panels2.Text := 登錄身份:教師; end; 2: begin frmStuSource.S1.Visible := False; frmStuSource.N10.Visible := False; := False; frmStuSource.sbMain.Panels0.Text := 學(xué)號(hào): + gr_LoginU

29、ser.sUserID; frmStuSource.sbMain.Panels1.Text := 姓名: + gr_LoginUser.sUserName; frmStuSource.sbMain.Panels2.Text := 登錄身份:學(xué)生; end; end; frmStuSource.ShowModal; end;end;procedure TfrmLogin.FormShow;begin iErrorCount := 0;end;procedure TfrmLogin.Edit1KeyDown;begin if Key = 13 then Edit2.SetFocus;end;pro

30、cedure TfrmLogin.Edit2KeyDown;begin if Key = 13 then btnOKClick;end;2、修改密碼function TfrmChangPwd.ChangePwd: Boolean;var sSQL: string; OldPwd,NewPwd: string;begin Result := True; if Trim = Trim then begin gf_MessageBox; edtNewPwd2.SetFocus; Result := False; Exit; end; OldPwd := Trim; NewPwd := Trim; s

31、SQL := update user set password = + QuotedStr + where userno = + QuotedStr; gf_ExecSQL;end;procedure TfrmChangPwd.btnOKClick;begin if not ChangePwd then begin gf_MessageBox; Exit; end;end;3、查詢數(shù)據(jù)procedure TfrmScoreMange.SearchData;var sSQL: string;begin sSQL := select a.sno,a.sname,b.sex,b.phone,o,am

32、e,a.score,a.GPA,d.departname,c.classname + from score a + left join student b on a.sno = b.sno + left join class c on b.classno = c.classno + left join department d on b.departid = d.departid + where 1 = 1; case gr_LoginUser.iType of 0: begin end; 1: begin sSQL := sSQL + and existsselect 1 from cour

33、se where cno = o and tno = + QuotedStr + ; end; 2: begin sSQL := sSQL + and a.sno = + QuotedStr; end; end; if Trim then sSQL := sSQL + and a.sno = + QuotedStrTrim; if Trim then sSQL := sSQL + and a.sName = + QuotedStrTrim; if Trim then sSQL := sSQL + and existsselect * from course where cno = o and

34、tno = + QuotedStrTrim + ; if Trim 全部 then sSQL := sSQL + and d.departname = + QuotedStrTrim; if Trim 全部 then sSQL := sSQL + and c.ClassName = + QuotedStrTrim; gf_OpenSQL;end;4、增加記錄procedure TfrmScoreMange.AddData;var sSQL: string; fScore: Double;begin if Trim = then begin gf_MessageBox; edtNo.SetFoc

35、us; Exit; end else if Trim = then begin gf_MessageBox; edtName.SetFocus; Exit; end else if Trim = then begin gf_MessageBox; edtCourse.SetFocus; Exit; end else if Trim = then begin gf_MessageBox; edtCourseName.SetFocus; Exit; end else if Trim = then begin gf_MessageBox; edtScore.SetFocus; Exit; end e

36、lse if Trim = then begin gf_MessageBox; edtGPA.SetFocus; Exit; end; if not TryStrToFloatTrim,fScore then begin gf_MessageBox; edtScore.SetFocus; Exit; end else if not TryStrToFloatTrim,fScore then begin gf_MessageBox; edtGPA.SetFocus; Exit; end; if gf_MessageBox = IDNO then Exit; sSQL := sSQL + inse

37、rt into score + values; sSQL := FormatsSQL,QuotedStrTrim,QuotedStrTrim,QuotedStrTrim ,QuotedStrTrim,QuotedStrTrim,QuotedStrTrim; try gf_ExecSQL; except on E: Exception do begin gf_MessageBox; end; end; SearchData;end;5、刪除記錄procedure TfrmScoreMange.DelData;var sSQL: string;begin if or then begin gf_M

38、essageBox; Exit; end; if gf_MessageBox = IDNO then Exit; sSQL := delete from score where sno = + QuotedStraqMaster.FieldByName.AsString + and cno = + QuotedStraqMaster.FieldByName.AsString; gf_ExecSQL; SearchData;end;6、修改記錄procedure TfrmScoreMange.EditData;var sSQL: string; sno: string;begin if or t

39、hen begin gf_MessageBox; Exit; end; sno := aqMaster.FieldByName.AsString; sSQL := update score set sno = %s,sname = %s, cno = %s, cname = %s, score = %s, GPA = %s where sno = + QuotedStraqMaster.FieldByName.AsString + and cno = + QuotedStraqMaster.FieldByName.AsString; sSQL := FormatsSQL,QuotedStrTr

40、im,QuotedStrTrim,QuotedStrTrim ,QuotedStrTrim,QuotedStrTrim,QuotedStrTrim; try gf_ExecSQL; except on E: Exception do begin gf_MessageBox; end; end; SearchData; aqMaster.Locate;end;7、統(tǒng)計(jì)procedure TfrmScoreStat.StatData;var sSQL: string; sCondition1,sCondition2: string; i: Integer;begin for i := 0 to d

41、gMaster.Columns.Count - 1 do dgMaster.Columnsi.Visible := True; sSQL := from score a + left join student b on a.sno = b.sno + left join class c on b.classno = c.classno + left join department d on b.departid = d.departid ; case iType of 1: begin sCondition1 := select a.sno,a.sname,c.classname,d.depa

42、rtname,o,ame,max as MaxScore, + min as MinScore,convertdecimal,avgconvert as avgScore, + sumcase when convert as Fail ; sCondition2 := group by a.sno,a.sname,c.classname,d.departname,o,ame; end; 2: begin dgMaster.Columns0.Visible := False; dgMaster.Columns1.Visible := False; sCondition1 := select c.

43、classname,d.departname,o,ame,max as MaxScore, + min as MinScore,convertdecimal,avgconvert as avgScore, + sumcase when convert as Fail ; sCondition2 := group by c.classname,d.departname,o,ame; end; 3: begin dgMaster.Columns0.Visible := False; dgMaster.Columns1.Visible := False; dgMaster.Columns2.Visi

44、ble := False; sCondition1 := select d.departname,o,ame,max as MaxScore, + min as MinScore,convertdecimal,avgconvert as avgScore, + sumcase when convert as Fail ; sCondition2 := group by d.departname,o,ame; end; 4: begin dgMaster.Columns0.Visible := False; dgMaster.Columns1.Visible := False; dgMaster

45、.Columns2.Visible := False; dgMaster.Columns3.Visible := False; sCondition1 := select o,ame,max as MaxScore, + min as MinScore,convertdecimal,avgconvert as avgScore, + sumcase when convert as Fail ; sCondition2 := group by o,ame; end; end; sSQL := sCondition1 + sSQL + sCondition2; gf_OpenSQL;end;8、打

46、印procedure CopyDbDataToExcel;var iCount, jCount: Integer; XLApp: Variant; Sheet: Variant; I: Integer;begin Screen.Cursor := crHourGlass; if not VarIsEmpty then begin XLApp.DisplayAlerts := False; XLApp.Quit; VarClear; end; try XLApp := CreateOleObject; except Screen.Cursor := crDefault; Exit; end; X

47、LApp.WorkBooks.Add; XLApp.SheetsInNewWorkbook := High + 1; for I := Low to High do begin XLApp.WorkBooks1.WorkSheetsI+1.Name := TDBGrid.Name; Sheet := XLApp.Workbooks1.WorkSheetsTDBGrid.Name; if not TDBGrid.DataSource.DataSet.Active then begin Screen.Cursor := crDefault; Exit; end; TDBGrid.DataSourc

48、e.DataSet.first; for iCount := 0 to TDBGrid.Columns.Count - 1 do Sheet.Cells1, iCount + 1 := TDBGrid.Columns.ItemsiCount.Title.Caption; jCount := 1; while not TDBGrid.DataSource.DataSet.Eof do begin for iCount := 0 to TDBGrid.Columns.Count - 1 do begin Sheet.CellsjCount + 1, iCount + 1 := TDBGrid.Columns.ItemsiCount.Field.AsStr

溫馨提示

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

評(píng)論

0/150

提交評(píng)論