數(shù)據(jù)流程分析_第1頁
數(shù)據(jù)流程分析_第2頁
數(shù)據(jù)流程分析_第3頁
數(shù)據(jù)流程分析_第4頁
數(shù)據(jù)流程分析_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

電子商務(wù)數(shù)據(jù)庫技術(shù)課程設(shè)計(jì)報(bào)告

題目:學(xué)生信息管理系統(tǒng)

院系:_____________

專業(yè)班級(jí):

學(xué)號(hào):_________

學(xué)生姓名:__________________

指導(dǎo)教師:___________________

2013年6月21日

第1章:需求分析.................................................................1

11.開發(fā)目的、背景與意義...................................................1

1.2系統(tǒng)概述................................................................1

1.3開發(fā)工具簡(jiǎn)介............................................................2

第2章:系統(tǒng)分析.................................................................3

2.1業(yè)務(wù)流程分析............................................................3

2.2數(shù)據(jù)流程分析............................................................3

2.3軟件功能設(shè)計(jì)............................................................4

2.4E-R圖...............................................................4

2.5詳細(xì)設(shè)計(jì)................................................................6

2.5.1數(shù)據(jù)庫設(shè)計(jì)........................................................6

2.5.2詳細(xì)代碼設(shè)計(jì)......................................................7

2.5.2.1公共模塊:......................................................7

2.5.2.2登陸界面設(shè)計(jì)....................................................9

2.5.2.3主窗體設(shè)計(jì):...................................................11

252.5學(xué)生注冊(cè)頁面.....................................................14

2.5.2.6,信息存儲(chǔ)......................................................16

2.5.2.7,密碼修改......................................................19

第1章:需求分析

11.開發(fā)目的、背景與意義

幾年前,各個(gè)學(xué)校的學(xué)生成績(jī)管理基本上都是靠手工進(jìn)行,隨著各個(gè)大

學(xué),有關(guān)學(xué)生信息管理工作所涉及的數(shù)據(jù)量越來越大,有的學(xué)校不得不靠增加人

力、物力來進(jìn)行學(xué)生信息管理。但手工管理具有效率底、易出錯(cuò)、檢索信息慢、

對(duì)學(xué)校的管理提供決信息較為困難等缺點(diǎn)。我校盡管部分學(xué)院或系已開出學(xué)生信

息管理系統(tǒng),但開發(fā)的系統(tǒng)不具有通用性,所以我想借本次課程設(shè)計(jì)之際,開發(fā)

一個(gè)不僅適用本校各系而且適用于其它各校的通用學(xué)生信息管理系統(tǒng)。

建立學(xué)生信息管理系統(tǒng),采用計(jì)算機(jī)對(duì)學(xué)生信息進(jìn)行管理,進(jìn)一步提高辦學(xué)效

益和現(xiàn)代化水平。幫助廣大教師提高工作效率,實(shí)現(xiàn)學(xué)生信息信息管理工作流程

的系統(tǒng)化、規(guī)范化和自動(dòng)化。以上各類信息目前還處于手工或半手工的管理狀態(tài),

效率低,可靠性差。配備電腦,但實(shí)際利用率不高,如果采用計(jì)算機(jī)進(jìn)行以上各

類信息的管理,必將大大提高工作效率,對(duì)學(xué)校各類信息的維護(hù)及了解起到積極

的作用。另外隨著計(jì)算機(jī)網(wǎng)絡(luò)的持續(xù)發(fā)展,無論是工作、學(xué)習(xí)還是生活,將會(huì)越

來越多地融入到流動(dòng)的比特中,人們的工作節(jié)奏在不斷加快,需要快捷的信息來

源,并對(duì)此作出反應(yīng)。因此,無論是從目前的現(xiàn)狀來看,還是面向未來,一個(gè)功

能完備的學(xué)生信息管理系統(tǒng)的開發(fā)都非常有必要。對(duì)系統(tǒng)的需求作了較深入的認(rèn)

識(shí),同時(shí)也掌握了一定的系統(tǒng)開發(fā)理論,借這次課程設(shè)計(jì)的契機(jī),一方面利用自

己的所學(xué)小刀試牛,另一方面通過這次實(shí)踐必將提升自身對(duì)軟件工程、數(shù)據(jù)庫、

程序設(shè)計(jì)等理論的認(rèn)識(shí),積累系統(tǒng)開發(fā)的經(jīng)驗(yàn)。

1.2系統(tǒng)概述

學(xué)生信息管理系統(tǒng)能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以來?/p>

們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如效率低、

保密性差,另外時(shí)間一長(zhǎng)將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶

來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能

己為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。

作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生檔案信息進(jìn)行管理具有著手工管理

所無法比擬的優(yōu)點(diǎn),例如檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、

壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率,也是企業(yè)的

科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套管理軟件成

為很有必要的。本系統(tǒng)具有較強(qiáng)的實(shí)用性和先進(jìn)性、規(guī)范管理、快速查詢等特點(diǎn)。

1.3開發(fā)工具簡(jiǎn)介

本系統(tǒng)的設(shè)計(jì)是在WindowsXP簡(jiǎn)體中文版操作系統(tǒng)環(huán)境下,使用MSVisual

Basic6.0中文版開發(fā)成功的。數(shù)據(jù)庫是MIS中的重要支持技術(shù),在MIS開發(fā)過

程中,如何選擇數(shù)據(jù)庫管理是一個(gè)重要的問題,目前,數(shù)據(jù)庫產(chǎn)品較多,每種產(chǎn)

品都具有各自的特點(diǎn)和適用范圍,因此,在選擇數(shù)據(jù)庫時(shí),應(yīng)考慮數(shù)據(jù)庫應(yīng)用的

特點(diǎn)及適用范圍,本系統(tǒng)選用的數(shù)據(jù)庫語言介紹如下:

VisualBasic是一種可視化的、面對(duì)對(duì)象和條用事件驅(qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程

序設(shè)計(jì),可用于開發(fā)Windows環(huán)境下的種類應(yīng)用程序。它簡(jiǎn)單易學(xué)、效率高,且

功能強(qiáng)大,可以與Windows的專業(yè)開發(fā)工具SDK相媲美,而且程序開發(fā)人員不必

具有C/C++編程基礎(chǔ)。在VisualBasic環(huán)境下,利用事件驅(qū)動(dòng)的編程機(jī)制、新

穎易用的可視化設(shè)計(jì)工具,使用Windows內(nèi)部的應(yīng)用程序接口(API)函數(shù),以及

動(dòng)態(tài)鏈接庫(DLL)、動(dòng)態(tài)數(shù)據(jù)交換(DDE)、對(duì)象的鏈接與嵌入(OLE)、開放式數(shù)據(jù)

訪問(ODBC)等技術(shù),可以高效、快速地開發(fā)出Windows環(huán)境下功能強(qiáng)大、圖形界

面豐富的應(yīng)用軟件系統(tǒng)

2

第2章:系統(tǒng)分析

2.1業(yè)務(wù)流程分析

2.2數(shù)據(jù)流程分析

普通用戶(學(xué)生):提供查詢(需登錄,僅顯示登錄用戶信息)

中等用戶(教師):提供增刪改查(需登錄,只可操作成績(jī)表,并且教師工號(hào)對(duì)

自己對(duì)應(yīng)的成績(jī))

管理員(教務(wù)處):提供增刪改查(可對(duì)學(xué)生,教師,成績(jī)等操作)

普通用戶:登錄賬戶為學(xué)生學(xué)號(hào)

3

中級(jí)用戶:登錄賬號(hào)為教師工號(hào),密碼自定義,可修改

管理員:登錄賬號(hào)為特定,密碼可修改,可增加特殊賬號(hào)

2.3軟件功能設(shè)計(jì)

2.4E-R圖

4

5

2.5.1數(shù)據(jù)庫設(shè)計(jì)

學(xué)生表(student):

列字段名類型長(zhǎng)度是否為空主鍵

學(xué)號(hào)Idchar20否是

姓名namechar6否否

性別sexchar2是否

出生年月birthdayDate/time8是否

民族nationText8是否

籍貫nativeText20是否

入學(xué)時(shí)間enterTimeDate/time10是否

院系編號(hào)fIDText10是否

專業(yè)編號(hào)spelDText10是否

班級(jí)編號(hào)cIDText10是否

教師表:

列字段名類型長(zhǎng)度是否為空主鍵

教師工號(hào)IDtext20否是

教師姓名tNametext10否否

性別tSextext10是否

6

民族tNationtext10是否

籍貫tNativetext10是否

政治面貌Politicaltext10是否

職稱titaltext10是否

所屬部門departmenttext10是否

登錄密碼passwordtext10是否

管理員表:

列字段名類型長(zhǎng)度是否為空主鍵

管理員編號(hào)adIDText10否是

管理員賬號(hào)adNameText10否否

密碼adPasswordText10否否

所屬部門adDeparttext10否否

成績(jī)表:

列字段名類型長(zhǎng)度是否為空主鍵

學(xué)生編號(hào)stuIDText10否否

學(xué)科編號(hào)sublDText10否否

平時(shí)成績(jī)usualText10否否

期末finalText10否否

總評(píng)effText10否否

教師工號(hào)teacherlDText10否否

院系表:

列字段名類型長(zhǎng)度是否為空主鍵

院系編號(hào)fIDText10否是

院系名稱fNameText10否否

2.5.2詳細(xì)代碼設(shè)計(jì)

2.5.2.1公共模塊:

解決登陸用戶信息以及數(shù)據(jù)庫標(biāo)志等公共信息,所以定義通用變量

PublicgUserNameAsString'保存用戶名稱

PublicgTidAsString'保存教師信息

7

PublicgStuIDAsString'保存學(xué)生登錄信息

PublicflagAsInteger'添加和修改的標(biāo)志

PublicgSQLAsString'保存SQL語句

Publickqsql2AsString'保存查詢其他考勤結(jié)果SQL語句

PublicArecordIDAsInteger

PublicLrecordIDAsInteger

PublicorecordIDAsInteger

PublicErecordIDAsInteger

PubliciflagAsInteger

數(shù)據(jù)庫是否打開標(biāo)志數(shù)據(jù)庫連接選用AD0DB連接方式,首先先編寫一公共模塊,

用于存放數(shù)據(jù)庫訪問類。

PublicFunctionTransactSQL(ByVaisqlAsString)AsADODB.Recordset

DimconAsADODB.Connection

DimrsAsADODB.Recordset

DimstrConnectionAsString

DimstrArray()AsString

Setcon=NewADODB.Connection

Setrs=NewADODB.Recordset

OnErrorGoToTransactSQL_Error

strConnection二〃Provider=Microsoft,jet.oledb.4.0;DataSource=z/&App.Pat&

/z\DB\StuData.mdb〃

strArray=Split(sql)

con.OpenstrConnection

IfStrComp(UCase$(strArray(0)),“select”,vbTextCompare)=0Then

rs.OpenTrim$(sql),con,adOpenKeyset,adLockOptimistic

SetTransactSQL=rs

iflag=1

Else

con.Executesql

iflag=1

EndIf

TransactSQL_Exit:

Setrs=Nothing

Setcon=Nothing

8

ExitFunction

TransactSQLError:

MsgBox〃查詢錯(cuò)誤:〃&Err.Description

iflag=2

ResumeTransactSQL_Exit

EndFunction

解決關(guān)閉窗口后程序任在后臺(tái)運(yùn)行類:

PublicSubShutdown(OptionalByVaiForceAsBoolean=False)

DimIAsLong

OnErrorResumeNext

ForI=Forms.Count-1To0Step-1

IfNotForceThen

IfForms.Count>IThen

ExitSub

EndIf

EndIf

NextI

IfForceOr(Forms.Count=0)ThenClose

IfForceOr(Forms.Count>0)ThenEnd

EndSub

識(shí)別tab鍵

PublicSubTabToEnter(KeyAsInteger)

IfKey=13Then

SendKeys〃{TAB}〃

EndIf

EndSub

2.5.2.2登陸界面設(shè)計(jì)

由于有三類用戶同時(shí)登陸

9

其中,學(xué)生輸入學(xué)號(hào)登陸,教師登陸由教工號(hào)于密碼登陸,管理員由賬號(hào)密碼登陸。

代碼如下:

PrivateSubcmdOK_Click()

DimsqlAsString

DimrsAsADODB.Recordset

IfTrim(UserName.Text="〃)Then

MsgBox〃沒有輸入用戶名,請(qǐng)重新輸入!〃,vbOKOnly+vbExclamation,,z

警告〃

UserName.SetFocus

Else

sql="select*fromAdministratorwhereadName='〃&

UserName.Text&

Setrs=TransactSQL(sql)

Ififlag=1Then

Ifrs.EOF=TrueThen

MsgBox〃沒有這個(gè)用戶,請(qǐng)重新輸入!〃,

vbOKOnly+vbExclamation,〃警告〃

UserName.SetFocus

Else

IfTrim(rs.Fields(2))=Trim(adPassWord.Text)Thenrs.CloseMe.Hide

gUserName=Trim(UserName.Text)'i己錄用戶

adminFrm.Show

10

UnloadMe

Else

MsgBox〃密碼不正確,請(qǐng)重新輸入!〃,vbOKOnly+vbExclamation,〃警告〃

adPassWord.SetFocus

adPassWord.Text=〃〃

EndIf

EndIf

Else

UnloadMe

EndIf

EndIf

EndSub

2.5.2.3主窗體設(shè)計(jì):

2.5.2.4系統(tǒng)選項(xiàng)中提供管理員注冊(cè),修改,刪除功能

其中,注冊(cè)界面代碼如下:

11

代碼:

PrivateSubcmdOK_Click()

DimsqlAsString

DimrsAsADODB.Recordset

IfTrim(adName.Text)=〃〃Then

MsgBox〃請(qǐng)輸入用戶名稱〃,vbOKOnly+vbExclamation,〃警告〃

ExitSub

adName.SetFocus

Else

sql="select*from

Administrator

where

adName='〃&adName.Text&〃'〃Setrs=TransactSQL(sql)

'判斷用戶名是否存在

Ifrs.EOF=FalseThen

MsgBox〃這個(gè)用戶已存在,請(qǐng)重新輸入!〃,vbOKOnly

+vbExc1amation,〃警告〃

adName.SetFocus

adName.Text=〃〃

passWl.Text=〃〃

12

passW2.Text=〃〃

ExitSub

Else

IfTrim(passWl.Text)=〃〃Then

MsgBox〃請(qǐng)輸入密碼〃,vbOKOnly+vbExclamation,〃警告〃

passWl.SetFocus

ExitSub

ElselfTrim(passW2.Text)=〃〃Then

passWl.SetFocus

ExitSub

ElselfTrim(passW2.Text)=〃〃Then

MsgBox〃請(qǐng)?jiān)俅屋斎朊艽a!〃,vbOKOnly+vbExclamation,〃警告〃

passW2.SetFocus

ExitSub

ElselfTrim(passWl.Text)<>Trim(passW2.Text)Then

MsgBox〃兩次輸入不一致,請(qǐng)重新輸入〃,vbOKOnly+vbExclamation,〃警告〃

passW2.Text=〃〃

passW2.SetFocus

ExitSub

Else

sql=〃insertintoAdministrator

(adID,adName,adPassword,adDepart)values('〃&id.Text&〃,,,〃&

adName.Text&〃&passWl.Text&"&Depart.Text&〃')〃

CallTransactSQL(sql)

MsgBox〃注冊(cè)成功!vbOKOnly+vbExclamation,〃添加結(jié)果〃

Callinit

EndIf

EndIf

EndIf

EndSub

13

2.5.2.5學(xué)生注冊(cè)頁面

優(yōu)化功能:

為用戶提供便捷的操作,以及在目標(biāo)中提到的要求,在學(xué)生注冊(cè)系統(tǒng)中加入了一

些便捷操作:

2.5.2.5.1,由于沒個(gè)學(xué)生由于院系,專業(yè),班級(jí)不同學(xué)號(hào)有所不同所以學(xué)號(hào)由

系統(tǒng)

自動(dòng)生成,以減少人工干預(yù),降低系統(tǒng)出錯(cuò)率。

PrivateSubcmdID_Click()

DimsqlAsString

DimrsAsNewADODB.Recordset

DimendIDAsString

DimtempIDAsString

DimelDAsString

DimrsaAsString

'Dimfaculty,special,classAsString

IffacultylD=〃〃Then

MsgBox〃請(qǐng)輸入院系!〃,vbOKOnly+vbExclamation,〃警告〃

14

faculty.SetFocus

ExitSub

ElselfspeciallD=〃〃Then

MsgBox〃請(qǐng)輸入專業(yè)!〃,vbOKOnly+vbExclamation,〃警告〃

special.SetFocus

ExitSub

ElselfclassID=〃〃Then

MsgBox〃請(qǐng)輸入班級(jí)!〃,vbOKOnly+vbExclamation,〃警告〃

class.SetFocus

ExitSub

Else

enterTime=Mid(entTime.Value,1,4)

sql="selectidfromstudentwhereidand

fID=〃&facultylD

&〃’andspelD='〃&speciallD&andcID='〃&classID&〃'orderbyid

desc〃

Setrs=TransactSQL(sql)

elD=rs(0)

elD=Right(elD,2)+1

'native.Text=classID

'native.Text=sql

endID=Right(Format(1000+elD),2)

'rs.Close

tempID=enterTime&facultylD&speciallD&classID&endID

id.Text=tempID

EndIf

EndSub

2.5.2.5.2,院系,專業(yè),班級(jí)都從數(shù)據(jù)庫中提取,在學(xué)生表中只存儲(chǔ)編號(hào)代碼。

DimsqlAsString

DimrsAsADODB.Recordset

sql="select*fromspecialwheresName='〃&special.Text&

Setrs=TransactSQL(sql)

classID=rs(0)

rs.Close

15

2.5.2.5.3,由于院系,專業(yè),班級(jí)有包含關(guān)系所以在這里combobox控件加入代

碼,實(shí)現(xiàn)選擇院系后所包含的專業(yè)自動(dòng)加入隊(duì)列。

PrivateSubfaculty_click()

DimsqlAsString

DimrsAsADODB.Recordset

'DimfIDAsString

DimsAsString

special.Clear'選定院系后刷新獲得院系所含專業(yè)

speciallD二〃〃

class.Clear

classID二〃〃

sql="select*fromfacultywherefName=,z,&faculty.Text&〃'

Setrs=TransactSQL(sql)

facultylD=rs(0)'rs.Close

sql="select*fromspecialwheresfID='〃&facultylD&

Setrs=TransactSQL(sql)

DoWhileNotrs.EOF

s=rs(1)

special.Additem(s)

rs.MoveNext

Loop

rs.Close

EndSub

2.5.2.6,信息存儲(chǔ)

由于在表中只存儲(chǔ)編號(hào)信息,程序中顯示名稱我們以添加新的班級(jí)為例。

16

■FOTBI目回區(qū)

在窗口加載時(shí)得將院系信息加入到combobox控件隊(duì)列,實(shí)現(xiàn)代碼如下:

PrivateSubForm_Load()

DimsqlAsString

DimrsAsADODB.Recordset

DimfAsString

sql="select*fromfacultywherefName〃

Setrs=TransactSQL(sql)

DoWhileNotrs.EOF

f=rs(1)

fID.Additem(f)

rs.MoveNext

Loop

rs.Close

EndSub

在選取院系信息后要將院系所包含的專業(yè)信息加入到隊(duì)列,實(shí)現(xiàn)代碼如下:

PrivateSubfID_Click()

DimsqlAsString

DimrsAsADODB.Recordset

DimsAsString

sID.Clear

選定院系后刷新獲得院系所含專業(yè)

sql="select*fromfacultywherefName='〃&fID.Text&〃

17

Setrs=TransactSQL(sql)

facID=rs(O)

'rs.Close

sql="select*fromspecialwheresfID='〃&facID&

Setrs=TransactSQL(sql)

DoWhileNotrs.EOF

s=rs(1)

sID.Additem(s)

rs.MoveNext

Loop

rs.Close

EndSub

由于班級(jí)編號(hào)在同一專業(yè)不能重復(fù),所以編號(hào)由系統(tǒng)自動(dòng)生成。

當(dāng)選定院系,專業(yè)后系統(tǒng)將從所數(shù)據(jù)庫獲得選定院系,專業(yè)現(xiàn)存的班級(jí)編號(hào),

按倒序排列后獲得最后的編碼,由系統(tǒng)自動(dòng)加顯示在控件上。實(shí)現(xiàn)代碼如下:

PrivateSubinit()

DimtempIDAsString

DimsqlAsString

DimrsAsADODB.Recordset

DimnumAsInteger

sql

="selectcID

fromclasswherefID='〃&facID&andsID=,〃&spelD&〃'orderbycID

desc〃

Setrs=TransactSQL(sql)

num=rs(0)

num=num+1+0

rs.Close

cID.Text=num

EndSub

其中參數(shù)facID,spelD在選取時(shí)記錄如以下代碼:

PrivateSubsID_Click()

DimsqlAsString

DimrsAsADODB.Recordset

18

sql="select*fromspecialwheresfID=,〃&facID&

Setrs=TransactSQL(sql)

spelD=rs(0)

rs.Close

Callinit

溫馨提示

  • 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)論