學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計論文_第1頁
學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計論文_第2頁
學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計論文_第3頁
學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計論文_第4頁
學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計論文_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘 要如今高校在日常管理當(dāng)中,學(xué)生成績管理是其中非常重要的一環(huán)。目前一些高校的學(xué)生規(guī)模大,課程類別多且校區(qū)分散,因此學(xué)生成績管理系統(tǒng)在高校管理中更具有實際應(yīng)用意義。隨著科技的發(fā)展,大多數(shù)機構(gòu)都開始使用計算機數(shù)據(jù)庫來進(jìn)行日常管理。而幾乎所有的高校都使用計算機數(shù)據(jù)庫進(jìn)行管理,這樣大大減少了學(xué)校教務(wù)工作者對學(xué)生成績管理的工作量。本課程設(shè)計要求用visual foxpro 6.0設(shè)計一個學(xué)生成績的數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫中要求包含學(xué)生的基本信息,專業(yè)基本信息,課程基本信息以及學(xué)生所學(xué)課程的考試成績,方便學(xué)生進(jìn)行成績查詢。通過本次課程設(shè)計,綜合運用數(shù)據(jù)庫管理知識,加強學(xué)生動手操作能力,學(xué)以致用。本文主要包

2、括七部分。其中第一部分是前言,主要是介紹本次課程設(shè)計的背景以及選題說明;第二部分主要對系統(tǒng)進(jìn)行分析,包括系統(tǒng)的需求分析和運行環(huán)境分析;第三部分主要對系統(tǒng)進(jìn)行設(shè)計,其中包括系統(tǒng)的數(shù)據(jù)庫設(shè)計和模塊詳細(xì)設(shè)計等內(nèi)容;第四部分是系統(tǒng)功能的實現(xiàn);第五部分是數(shù)據(jù)操作,簡單對數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行操作;第六部分是系統(tǒng)的實施運行與維護(hù);最后一個部分是結(jié)論,對本次課程設(shè)計進(jìn)行簡要的總結(jié)。關(guān)鍵字:visual foxpro;管理系統(tǒng);系統(tǒng)設(shè)計;運行維護(hù);數(shù)據(jù)庫目 錄摘 要i1 前言11.1 作業(yè)背景11.2 選題說明11.3 工作業(yè)績11.3.1 個人主要工作11.3.2 主要收獲11.3.3 自我評定22 系統(tǒng)分析32

3、.1 需求分析32.1.1 系統(tǒng)概述32.1.2 功能需求32.2 運行環(huán)境分析42.2.1 硬件運行環(huán)境42.2.2 軟件運行環(huán)境43 系統(tǒng)設(shè)計53.1 數(shù)據(jù)庫設(shè)計53.1.1 概念設(shè)計53.1.2e-r概念模型63.1.3 關(guān)系設(shè)計73.1.4 數(shù)據(jù)字典73.2 數(shù)據(jù)表設(shè)計93.3 模塊設(shè)計103.3.1 界面設(shè)計103.3.2 查詢模塊設(shè)計174 功能實現(xiàn)224.1 系統(tǒng)流程224.2 系統(tǒng)功能實現(xiàn)224.2.1 界面功能實現(xiàn)224.2.2 系統(tǒng)操作界面功能實現(xiàn)245 數(shù)據(jù)操作265.1 插入265.2 查詢265.3 自定義函數(shù)276 系統(tǒng)運行與維護(hù)296.1 系統(tǒng)運行296.1.1

4、運行方法296.1.2 存在問題296.1.3 主要代碼實現(xiàn)306.2 系統(tǒng)維護(hù)31結(jié) 論33參考文獻(xiàn)34學(xué)生成績管理系統(tǒng)的開發(fā)與設(shè)計1 前言1.1 作業(yè)背景本文根據(jù)數(shù)據(jù)庫應(yīng)用課程要求而做。利用學(xué)生上課所學(xué)的有關(guān)數(shù)據(jù)庫的知識,建立一個數(shù)據(jù)庫系統(tǒng),具有查詢功能,包括數(shù)據(jù)的輸入與輸出。除此之外還要有簡單的管理功能,如增加、修改、刪除等等。1.2 選題說明先如今隨著計算機的發(fā)展,多數(shù)機構(gòu)選擇利用計算機進(jìn)行信息化管理,而且目前高校的學(xué)生規(guī)模大,課程類別繁多,因此如何合理、有效、快速的對學(xué)生的成績進(jìn)行管理是很重要的,也是大多數(shù)學(xué)校教務(wù)部門關(guān)心的話題。所以建立一個學(xué)生成績管理系統(tǒng),對高校的管理是至關(guān)重要的

5、,因此,我們本次課程設(shè)計選擇建立一個學(xué)生成績管理系統(tǒng),便于高校對學(xué)生成績的有效管理。1.3 工作業(yè)績1.3.1 個人主要工作針對本次課程設(shè)計中,我們四個人組成一個小組,共同建立一個學(xué)生成績管理系統(tǒng)。在這次課程設(shè)計中,我主要做系統(tǒng)的設(shè)計工作。針對本次課程設(shè)計的要求,建立一個小型系統(tǒng),一個系統(tǒng)的建立離不開設(shè)計。在對系統(tǒng)進(jìn)行設(shè)計之前,首先對系統(tǒng)進(jìn)行簡單的分析,分析其需求環(huán)境以及運行環(huán)境,并畫出它們的er圖,直觀看出他們之間的關(guān)系,然后根據(jù)分析結(jié)果對系統(tǒng)進(jìn)行設(shè)計。設(shè)計工作主要從兩方面進(jìn)行:總體與詳細(xì)設(shè)計。1.3.2 主要收獲通過本次課程設(shè)計,使我更多地了解了數(shù)據(jù)庫原理與應(yīng)用這門課程,對其中內(nèi)容有了更多

6、的了解,要建立一個完整的管理系統(tǒng),就必須明白這個系統(tǒng)所包含的基本內(nèi)容、處理一些怎樣的信息等。最主要的是畫出他們的er圖,便可直觀的看出他們關(guān)系。我想通過這次課程設(shè)計可以更好的將所學(xué)知識運用到實際中去,也讓我對數(shù)據(jù)庫知識有了更深的認(rèn)識和了解。在這次實踐設(shè)計過程中,我懂得了如何將所學(xué)的理論知識運用到實際中去,使得所學(xué)的知識能夠融會貫通。1.3.3 自我評定 優(yōu) 良 中 及格 不及格2 系統(tǒng)分析2.1 需求分析 在學(xué)校的信息化管理中,學(xué)生相關(guān)信息的管理是一個重點。其中對學(xué)生成績進(jìn)行有效的管理是學(xué)校教務(wù)部門對學(xué)生信息管理的一個重要環(huán)節(jié)。傳統(tǒng)的手工方式效率低下,重復(fù)工作很多,并且很難保證正確性。本次系統(tǒng)

7、設(shè)計的目的是加強對學(xué)生信息的管理,減輕教務(wù)部門的勞動強度,保證信息處理的高效進(jìn)行。2.1.1 系統(tǒng)概述學(xué)生成績管理系統(tǒng)可以為學(xué)校里各院系的教務(wù)管理部門提供學(xué)生相關(guān)信息管理基本功能,特別是對學(xué)生成績進(jìn)行管理,從而幫助教務(wù)部門通過電子化的管理方式,提高工作效率,盡可能節(jié)約人力、物力、財力,符合信息化管理的潮流。這些管理包括:(1)學(xué)生基本信息管理,包括增加、修改、刪除管理;(2)專業(yè)信息管理,包括增加、修改、刪除管理;(3)課程信息管理,包括增加、修改、刪除管理;(4)成績管理,包括學(xué)生成績的增加、修改、刪除管理;(5)打印管理,對現(xiàn)有數(shù)據(jù)庫信息進(jìn)行打印。2.1.2 功能需求本系統(tǒng)的功能需求有如下

8、幾個方面:(1)用戶登錄管理:使用戶名和密碼進(jìn)行管理。(2)數(shù)據(jù)添加功能:對于學(xué)生基本信息、專業(yè)信息、課程信息、學(xué)生成績信息,可以在系統(tǒng)中實現(xiàn)數(shù)據(jù)的添加工作。(3)數(shù)據(jù)查詢功能:對于學(xué)生基本信息、專業(yè)信息、課程信息、學(xué)生成績信息,可以在系統(tǒng)中實現(xiàn)數(shù)據(jù)的查詢工作。(4)數(shù)據(jù)修改功能:對于學(xué)生基本信息、專業(yè)信息、課程信息、學(xué)生成績信息,可以在系統(tǒng)中實現(xiàn)數(shù)據(jù)的修改工作。(5)數(shù)據(jù)刪除功能:對于學(xué)生基本信息、專業(yè)信息、課程信息、學(xué)生成績信息,可以在系統(tǒng)中實現(xiàn)數(shù)據(jù)的刪除工作。(6)打印功能:對于學(xué)生基本信息、專業(yè)信息、課程信息、學(xué)生成績信息,可以在系統(tǒng)中實現(xiàn)數(shù)據(jù)的打印工作。2.2 運行環(huán)境分析本系統(tǒng)是采

9、用visual foxpro 6.0進(jìn)行開發(fā),故本系統(tǒng)的軟硬件運行環(huán)境與visual foxpro 6.0相同。2.2.1 硬件運行環(huán)境處理器:486處理器以上,推薦使用 pentium 或更高檔處理器的 pc 兼容機。 內(nèi)存:32mb 以上的內(nèi)存。 硬盤空間:1gb以上。顯卡:svga顯示適配器。2.2.2 軟件運行環(huán)境操作系統(tǒng):windows /98/me/2000/xp。不推薦使用windows vista及windows 7,不確定visual foxpro 6.0在上述兩個系統(tǒng)中的穩(wěn)定性及兼容性。操作軟件:visual foxpro 6.03 系統(tǒng)設(shè)計3.1 數(shù)據(jù)庫設(shè)計3.1.1 概

10、念設(shè)計按照用戶的觀點來對數(shù)據(jù)和信息建模。從前一章需求分析中可以歸納出了4個實體,其分別為:學(xué)生信息、專業(yè)信息、成績信息、課程信息。其屬性以下進(jìn)行說明。1、學(xué)生基本信息:學(xué)號、姓名、性別、專業(yè)代號、系名。在e-r圖中學(xué)生實體應(yīng)如圖3-1所示學(xué)生基本信息實體姓名學(xué)號系名性別專業(yè)代號圖3-1學(xué)生基本信息e-r圖2、課程信息:課程名、課程號、學(xué)時、學(xué)號。e-r圖中課程實體如圖3-2s所示課程信息實體課程名課程號學(xué)時學(xué)分圖3-2課程信息實體3、專業(yè)信息:專業(yè)代號、專業(yè)名稱、學(xué)制。e-r圖中專業(yè)信息如圖3-3所示專業(yè)信息實體專業(yè)代號專業(yè)名稱學(xué)制圖3-3專業(yè)信息實體4、成績信息:學(xué)號、課程代號、成績。e-r

11、圖如3-4所示成績信息課程代號學(xué)號成績圖3-4成績信息實體3.1.2 e-r概念模型 系統(tǒng)綜合e-r圖如圖3-5所示學(xué)生課程學(xué)號姓名性別專業(yè)代號系名學(xué)分學(xué)時課程名課程號查詢成績成績圖3-5系統(tǒng)e-r圖3.1.3 關(guān)系設(shè)計依據(jù)需求分析結(jié)果,學(xué)生成績管理系統(tǒng)的主要模塊包括:用戶登錄模塊、數(shù)據(jù)添加管理模塊、數(shù)據(jù)查詢管理模塊、數(shù)據(jù)修改管理模塊、數(shù)據(jù)打印模塊等5個功能模塊,系統(tǒng)關(guān)系結(jié)構(gòu)圖如圖3-6所示用戶登錄數(shù)據(jù)添加管理學(xué)生成績管理系統(tǒng)數(shù)據(jù)查詢管理數(shù)據(jù)修改管理打印管理圖3-6系統(tǒng)模塊結(jié)構(gòu)圖3.1.4 數(shù)據(jù)字典1、用戶信息表用戶登錄系統(tǒng)的信息如表3-1所示 表3-1用戶信息表字段字 段 名類型寬度小數(shù)位索

12、引nulls1用戶名c100升序否2密碼c200否2、學(xué)生信息表:學(xué)生信息如表3-2所示表3-2學(xué)生信息表字段字 段 名類型寬度小數(shù)位索引nulls1學(xué)號c10升序否2姓名c20否3性別c2否4專業(yè)代號c10否5系名c10否3、學(xué)生成績信息表:學(xué)生成績信息如表3-3所示表3-3學(xué)生成績信息表字段字 段 名類型寬度小數(shù)位索引nulls1學(xué)號c10升序否2課程代號c10否3成績n31否4、專業(yè)信息表:學(xué)生專業(yè)信息如表3-4所示表3-4專業(yè)信息表字段字 段 名類型寬度小數(shù)位索引nulls1專業(yè)代號c10否2專業(yè)名稱c20否3學(xué)制n1否5、課程信息表課程信息如表3-5所示表3-5課程信息表字段字 段

13、名類型寬度小數(shù)位索引nulls1課程名c20升序否2課程號c4否3學(xué)時n2否4學(xué)分n2否3.2 數(shù)據(jù)表設(shè)計 數(shù)據(jù)表的設(shè)計是新建文件表,在表設(shè)計器中通過更改字段,實現(xiàn)表的設(shè)計。1、 用戶信息表利用數(shù)據(jù)字典的字段名及類型對用戶信息表進(jìn)行設(shè)計,操作步驟如圖3-7圖3-7用戶信息表2、 學(xué)生信息表新建一個數(shù)據(jù)表命名為xs1,進(jìn)入表設(shè)計器中,對數(shù)據(jù)字典中的字段進(jìn)行設(shè)置的具體操作如圖3-8所示圖3-8學(xué)生信息表字段設(shè)置完成之后,進(jìn)行數(shù)據(jù)輸入,具體內(nèi)容如圖3-9所示圖3-9學(xué)生信息其余數(shù)據(jù)表,如課程信息表、成績信息表、專業(yè)信息表的具體操作與學(xué)生信息表的操作類似。均是建立新的數(shù)據(jù)表,在表設(shè)計其中段字段進(jìn)行設(shè)置

14、,然后輸入相關(guān)信息的內(nèi)容。3.3 模塊設(shè)計3.3.1 界面設(shè)計界面設(shè)計應(yīng)該尊簡潔美觀、方便易用的基本原則,具體設(shè)計如下。1、 登錄界面設(shè)計 登錄界面主要用于管理員進(jìn)行登錄操作,界面中需要用用戶名和密碼進(jìn)行登錄操作,登陸界面的效果如圖3-10所示圖3-10登陸界面在桌面雙擊成績管理系統(tǒng).exe,系統(tǒng)自動進(jìn)入主界面,顯示“歡迎使用學(xué)生成績管理系統(tǒng)”下方兩個按鍵分別為“進(jìn)入”“退出”,單擊進(jìn)入,系統(tǒng)自動進(jìn)入登錄頁面,單擊退出系統(tǒng)自動關(guān)閉。command1 進(jìn)入 clickuse xt.dbf if alltrim(thisform.text1.value)=alltrim( 用戶名) .and. a

15、lltrim(thisform.text2.value)=alltrim(密碼) use _screen.visible=.t. do form caidan.scx thisform.release else messagebox(用戶名與密碼不對!,本系統(tǒng)通知您) endifcommand2 退出 click quit 2、主頁面設(shè)計充分考慮界面易于操作的系統(tǒng)需求,主窗口使用簡單和直觀的界面設(shè)計,提供主要的功能模塊入口。主界面設(shè)計的效果如圖3-11所示圖3-11主界面進(jìn)入學(xué)生管理系統(tǒng)之后,出現(xiàn)6個命令按鈕,分別為系統(tǒng)初始化、學(xué)生信息輸入、成績輸入、專業(yè)信息輸入、打印及退出。 command

16、1 系統(tǒng)初始化 click do form csh.scx command2 學(xué)生信息輸入 click do form xssr.scx command3 成績輸入 click do form cj.scx command4 專業(yè)信息輸入 click do form zysr.scx command5 打印 click report from cjbb.frx command6 退出 click quit3、系統(tǒng)工具設(shè)計(1)初始化界面初始化界面用于清空所有數(shù)據(jù),界面設(shè)計如圖3-12所示圖3-12初始化界面command1初始化 clicksele 1 use cj excl dele all

17、 pack sele 2 use xs excl dele all pack sele 3 use zydm excl dele all pack close data messagebox(操作完成,)(2)學(xué)生信息輸入界面學(xué)生信息輸入界面用來輸入學(xué)生的具體信息,包括學(xué)號姓名、性別、專業(yè)代號、系名。界面設(shè)計如圖3-13所示圖3-13學(xué)生信息輸入設(shè)計界面學(xué)生信息輸入界面 xssr.scx是一個表單集,有兩個表單如上所示。前者用于增加、刪除和修改學(xué)生信息,后者可查詢學(xué)生信息。數(shù)據(jù)環(huán)境用的表文件是cj.dbfcommand1 增加 click append blank go bottom this

18、form.txt學(xué)號.setfocus thisform.txt學(xué)號.value= thisform.txt姓名.value= thisform.txt性別.value= thisform.txt專業(yè)代號.value= thisform.txt系名.value= thisform.txt學(xué)號.readonly=.f. thisform.txt姓名.readonly=.f. thisform.txt性別.readonly=.f. thisform.txt專業(yè)代號.readonly=.f. thisform.txt系名.readonly=.f. mand_move1.new.enabled=.f.

19、 mand_move1.find.enabled=.f. mand_move1.f_next.enabled=.f. mand_move1.delete.enabled=.f. mand_move1.first.enabled=.f. mand_move1.previous.enabled=.f. mand_move1.next.enabled=.f. mand_move1.last.enabled=.f. mand_move1.edit.enabled=.f. mand_move1.save.enabled=.t. thisform.refresh command2 查詢 click thi

20、sformset.form2.visible=.t. command3查下一個 click continue thisform.refresh command4 刪除 click dele pack thisform.refresh command5 存盤 click repl 學(xué)號 with alltrim(thisform.txt學(xué)號.value) repl 姓名 with alltrim(thisform.txt姓名.value) repl 性別 with alltrim(thisform.txt性別.value) repl 專業(yè)代號 with alltrim(thisform.txt專

21、業(yè)代號.value) repl 系名 with alltrim(thisform.txt系名.value) thisform.txt學(xué)號.readonly=.t. thisform.txt姓名.readonly=.t. thisform.txt性別.readonly=.t. thisform.txt專業(yè)代號.readonly=.t. thisform.txt系名.readonly=.t. mand_move1.new.enabled=.t. mand_move1.find.enabled=.t. mand_move1.f_next.enabled=.t. mand_move1.delete.e

22、nabled=.t. mand_move1.first.enabled=.t. mand_move1.previous.enabled=.t. mand_move1.next.enabled=.t. mand_move1.last.enabled=.t. mand_move1.edit.enabled=.t. mand_move1.save.enabled=.f. thisform.refresh command6 修改 click thisform.txt學(xué)號.readonly=.f. thisform.txt姓名.readonly=.f. thisform.txt性別.readonly=.

23、f. thisform.txt專業(yè)代號.readonly=.f. thisform.txt系名.readonly=.f. mand_move1.new.enabled=.f. mand_move1.find.enabled=.f. mand_move1.f_next.enabled=.f. mand_move1.delete.enabled=.f. mand_move1.first.enabled=.f. mand_move1.previous.enabled=.f. mand_move1.next.enabled=.f. mand_move1.last.enabled=.f. mand_mo

24、ve1.edit.enabled=.f. “第一個”、“前一個”、“后一個”、“尾一個”click事件,通過設(shè)計類command_move實現(xiàn)。 command7 第一個 click go top thisform.refresh command8 前一個 click if bof() messagebox(已經(jīng)是第一個記錄了!,系統(tǒng)) else skip -1 thisform.refresh endif command9 后一個 click if eof() messagebox(已經(jīng)是最后一個記錄了!,系統(tǒng)) else skip thisform.refresh endif comman

25、d10尾一個1 click1 go bott thisform.refresh (3)成績輸入界面 成績輸入界面用來輸入學(xué)生的成績,界面輸入信息包括學(xué)號、課程代號、成績。界面設(shè)計如圖3-14所示圖3-14成績輸入設(shè)計界面成績輸入界面也是使用表單集,相關(guān)按鈕代碼同學(xué)生信息輸入大同小異,只是數(shù)據(jù)環(huán)境用的表文件不同,是cj.dbf(4)專業(yè)信息輸入界面專業(yè)信息輸入界面用來輸入學(xué)生所在專業(yè)的信息,具體是專業(yè)代號、專業(yè)名稱、學(xué)制。界面設(shè)計如圖3-15所示圖3-15專業(yè)信息設(shè)計界面專業(yè)信息界面也是使用表單集,相關(guān)按鈕代碼同學(xué)生信息輸入大同小異,只是數(shù)據(jù)環(huán)境用的表文件不同,是zydm.dbf。3.3.2 查

26、詢模塊設(shè)計在數(shù)據(jù)查詢模塊中,用戶可以選定學(xué)生信息表、課程信息表、專業(yè)信息表、成績信息表來進(jìn)行數(shù)據(jù)的查詢。每一個表放到單獨的一個屬性界面中,用戶通過不同的頁面完成對四個不同表的數(shù)據(jù)的查詢操作。在項目中新建一個表單,首先設(shè)置表單的數(shù)據(jù)環(huán)境,在form1窗口中單擊鼠標(biāo)右鍵,執(zhí)行“數(shù)據(jù)環(huán)境”命令,添加表“學(xué)生”。向表單設(shè)計區(qū)域添加的控件屬性設(shè)置如表3-6所示表3-6控件屬性設(shè)置控件名稱屬性屬性值txt性別controlsource“學(xué)生.性別”height20left108maxlength2readonly.t.top84width84nam e“txt性別”tx專業(yè)代號controlsource“

27、學(xué)生.專業(yè)代號”height20inputmask“#”left108maxlength4readonly.t.top132width120nam e“txt專業(yè)代號”cmd第一條top228left12height25width36caption“/”name“cmd第一條”cmd上一條top228left48height25width36caption“”name“cmd下一條”cmd最后top228left120height25width 36caption“/”name“cmd最后”具體各模塊設(shè)計代碼如下:if select(學(xué)生)=0messagebox(數(shù)據(jù)表學(xué)生不存在,請檢查后再

28、試!,0+16,警告)elseselect 學(xué)生locate for allt(thisform.combo1.value)=allt(學(xué)號)if found()mm=recno() thisform.txt姓名.value=姓名thisform.txt性別.value=性別thisform.txt專業(yè)代號.value=專業(yè)代號endifendifskipif eof()thisform.cmd下一條.enabled=.f.thisform.cmd上一條.enabled=.t.elseskip -2 if bof() thisform.cmd上一條.enabled=.f.thisform.cm

29、d下一條.enabled=.t.elsethisform.cmd下一條.enabled=.t.thisform.cmd上一條.enabled=.t.endifendif第一條按鈕go top thisform.txt姓名.value=姓名thisform.txt性別.value=性別thisform.txt專業(yè)代號.value=專業(yè)代號thisform.combo1.value=學(xué)號mm=recno()thisform.cmd上一條.enabled=.f.thisform.cmd下一條.enabled =.t. 上一條按鈕if !bof()skip -1thisform.txt姓名.value

30、=姓名thisform.txt性別.value=性別thisform.txt專業(yè)代號.value=專業(yè)代號thisform.combo1.value=學(xué)號mm=recno()elsethisform.cmd上一條.enabled=.f.endifif eof()thisform.cmd下一條.enabled=.f.else thisform.cmd下一條.enabled=.t.endif下一條按鈕if !bof()skip -1thisform.txt姓名.value=姓名thisform.txt性別.value=性別thisform.txt專業(yè)代號.value=專業(yè)代號thisform.co

31、mbo1.value=學(xué)號mm=recno()elsethisform.cmd上一條.enabled=.f.endifif eof()thisform.cmd下一條.enabled=.f.else thisform.cmd下一條.enabled=.t.endif最后一條按鈕go bottomthisform.txt姓名.value=姓名thisform.txt性別.value=性別thisform.txt專業(yè)代號.value=專業(yè)代號thisform.combo1.value=學(xué)號mm=recno()thisform.cmd下一條.enabled=.f.thisform.cmd上一條.enab

32、led=.t.退出按鈕thisform.release確定按鈕其他表單的設(shè)計過程與此類似。4 功能實現(xiàn)4.1 系統(tǒng)流程 系統(tǒng)實現(xiàn)的流程圖如圖4-1所示開始用戶登錄系統(tǒng)界面維護(hù)瀏覽查詢幫助更新密碼維護(hù)表記錄版全所有學(xué)生信息表課程信息表專業(yè)信息表成績信息表圖4-1流程圖4.2 系統(tǒng)功能實現(xiàn)4.2.1 界面功能實現(xiàn)1、登陸界面第一步:創(chuàng)建表單并保存為“jm.scx”;第二步:添加lable1,并設(shè)置其caption屬性為“歡迎使用學(xué)生成績管理系統(tǒng)”;lable2,設(shè)置其caption屬性為“用戶名”; lable3,設(shè)置其caption屬性為“密碼”;第三步:添加text1和text2并設(shè)置相關(guān)屬性

33、;第四步:添加command1和command2并將其設(shè)置為“進(jìn)入”和“退出”。登錄界面功能實現(xiàn)如圖4-2所示:圖4-2登陸界面使用通過用戶名與密碼進(jìn)入該學(xué)生成績管理系統(tǒng)。如用戶名輸入10040102,密碼yao,成功進(jìn)入系統(tǒng)。2、 主界面第一步:創(chuàng)建表單并保存為“caidan.scx”;第二步:添加lable1,并設(shè)置其caption屬性為“學(xué)生成績管理系統(tǒng)”;lable2,設(shè)置其caption屬性為“輸入”;第三步:添加command1至command6并將其設(shè)置為“系統(tǒng)初始化”、“學(xué)生信息輸入”、“成績輸入”、“專業(yè)信息輸出入”、“打印”和“退出”。主界面功能實現(xiàn)如圖4-3 圖4-3主界

34、面4.2.2 系統(tǒng)操作界面功能實現(xiàn)1、 初始化初始化功能實現(xiàn)如圖4-4所示,用以刪除所有數(shù)據(jù),恢復(fù)初始狀態(tài)。圖4-4初始化2、 其他信息輸入界面如圖4-5所示的學(xué)生信息輸入界面,通過此界面可以對學(xué)生的基本信息進(jìn)行增加、刪除和修改,同時還可以進(jìn)行查詢功能,如輸入學(xué)號1004010201查詢王慧同學(xué)的所有相互的信息。圖4-5學(xué)生信息輸入界面專業(yè)信息輸入、成績輸入與此相仿,不做介紹。5 數(shù)據(jù)操作 5.1 插入向成績表中添加insert into score values(101,01,88)insert into score values(101,02,85)insert into score va

35、lues(102,02,80)insert into score values(101,03,88)insert into score values(102,02,85)insert into score values(102,03,80)insert into score values(103,01,83)insert into score values(103,02,85)insert into score values(103,03,90)insert into score values(104,01,60)查看記錄 如圖5-1所示select * from score圖5-1成績表添加

36、記錄顯示5.2 查詢(1)查詢成績大于學(xué)號為101的學(xué)生的課程為02的成績的所有列。select * from score where degree(select degree from score where sno=101 and cno=02)查詢結(jié)果如圖5-2所示圖5-2查詢結(jié)果顯示(2)查詢課程號01大于課程號02的最大值、并以分?jǐn)?shù)降序排序的成績表中所有列select * from score s where o=01 and s.degree=(select max(degree) from score y where o=02 ) order by degree descgo s

37、elect max(degree) as 02max from score where cno=02查詢結(jié)果如圖5-3所示圖5-3查詢結(jié)果顯示5.3 自定義函數(shù)(1)創(chuàng)建一個用戶自定義函數(shù),輸出與指定的學(xué)生同班的學(xué)生個數(shù)create function studentcount(sno char(5)returns intbegindeclare counter intselect counter=count(*) from student where class=(select class from student where sno=sno)return counterend調(diào)用此自定義函數(shù)

38、declare a intset a=dbo.studentcount(102)print convert(char(3),a)(2) 創(chuàng)建一個用戶自定義函數(shù),用于輸出同一個專業(yè)中的學(xué)生信息create function studentclass(class char(5)returns tablereturn(select * from student where class=class)調(diào)用自定義函數(shù)(本例是輸出12班的學(xué)生信息)select * from studentclass(12)6 系統(tǒng)運行與維護(hù)6.1 系統(tǒng)運行 首先建立一個項目文件,命名為xt.pjx,在項目文件中新建兩個數(shù)據(jù)

39、庫分別命名為xscj.dbc,、xsxx.dbc,進(jìn)行表單及數(shù)據(jù)表的建立,對其進(jìn)行數(shù)據(jù)輸入,然后在項目管理器中運行。如圖6-1所示圖6-1學(xué)生成績項目管理器6.1.1 運行方法 在vfp6.0中打開“學(xué)生成績管理系統(tǒng).pjx”,運行主程序,輸入正確的用戶名和密碼(均預(yù)設(shè)為yao和yao),然后就可以進(jìn)入學(xué)生成績管理系統(tǒng)主界面,進(jìn)行各種操作,詳見上文各表單文件。 6.1.2 存在問題 表單單獨預(yù)覽可以,效果如上所示;但是在主程序中無法運行,我用的click 代碼是“report form cjbb.frx”,一直弄不明白。 6.1.3 主要代碼實現(xiàn) (1)主程序main.prg set talk

40、 off set esca off set echo off set date ansi set cent on set hour to 24 _screen.visible=.f. on shutdown do shutdown set notify off clea all close all clear _screen.autocenter=.t. _screen.zoombox=.f. _screen.borderstyle=3 _screen.showtips=.t. _screen.windowstate=0 _screen.controlbox=.f. _screen.closable=.t. local icsys16,icproram icsys16=sys(16) icprogram=substr(icsys16,at(:,icsys16

溫馨提示

  • 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

提交評論