版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
...wd...學生信息管理系統(tǒng)數(shù)據(jù)庫課程設計與實現(xiàn)摘要學生信息管理系統(tǒng)是典型的管理信息系統(tǒng)〔MIS〕,其系統(tǒng)開發(fā)主要包括數(shù)據(jù)庫的規(guī)劃設計與維護、客戶端應用程序的開發(fā)兩個方面。對于前者要求建設起的數(shù)據(jù)庫具有完整性和一致性,且具有一定的數(shù)據(jù)安全性,而對于后者則要求程序界面友好、功能完備,容易使用,具有流行軟件的操作習慣等特點。【2】經(jīng)過詳細的調查分析,我選用VisualBasic6.0作為前端開發(fā)工具,利用其提供的集成開發(fā)環(huán)境及支持面向對象的各種標準化的控件,尤其是對ADO的支持完成對數(shù)據(jù)庫的各種操作,到達對學生學籍管理的目的。設計時首先在短時間內先建設系統(tǒng)應用原型,然后對初始原型系統(tǒng)進展需求迭代,不斷修正和改良,直到形成用戶滿意的實際可行系統(tǒng)。關鍵詞:學生檔案;管理;分析;設計;實現(xiàn);ADOAbstractStudentInformationManagementSystemisatypicalmanagementinformationsystem(MIS),thesystemdevelopmentincludesdatabaseplanninganddesignandmaintenance,theclientapplicationdevelopmentaspects.Requestfortheestablishmentofthedatabasehasintegrityandconsistency,andwithsomedatasecurity,whilethelatterrequiresproceduresforthefriendlyinterface,completefunctions,easytouse,withpopularfeaturesofthesoftwareoperatinghabits.Afterdetailedinvestigationandanalysis,IuseVisualBasic6.0asfront-enddevelopmenttool,theuseofitsintegrateddevelopmentenvironmentandsupportavarietyofstandardizedobject-orientedcontrol,especiallyforADOsupportforthecompletionofvariousoperationsonthedatabase,toThepurposeoftheStatusofStudents.Designinashorttimebeforethefirstprototypeapplicationsystem,thentheinitialprototypeofthesystemneedstoconstantlyreviseandimprovecustomersatisfactionuntiltheformationofthepracticalsystems.Keywords:studentrecords,management,analysis,design,implementation,ADO目錄第一章前言…………2第二章數(shù)據(jù)庫管理系統(tǒng)的概述………3第三章程序開發(fā)的技術根基……………53.1HTML語言…………53.2ASP技術………………53.2.1ASP簡介………63.2.2ASP工作原理…………………63.2.3ASP的發(fā)布……………………73.3數(shù)據(jù)庫原理……………73.3.1SQL語言簡單介紹………………73.3.2ADO技術介紹…………………7第四章學生信息管理系統(tǒng)數(shù)據(jù)庫課程設計與實現(xiàn)……84.1需求分析………………84.1.1用戶調查………84.1.2構造系統(tǒng)的邏輯模型…………94.1.3確定目標系統(tǒng)的功能…………104.1.4數(shù)據(jù)分析概念模型分析…………………114.2總體設計……v………134.2.1軟件系統(tǒng)構造的設計…………134.2.2數(shù)據(jù)庫的設計…………………154.3詳細設計………………184.3.1具體描述………184.3.2具體實現(xiàn)步驟…………………19第五章總結………………24第六章系統(tǒng)展望………24第七章致謝……………25第八章參考目錄………26第一章前言學生信息管理系統(tǒng)是典型的管理信息系統(tǒng)〔MIS〕,其系統(tǒng)開發(fā)主要包括數(shù)據(jù)庫的規(guī)劃設計與維護、客戶端應用程序的開發(fā)兩個方面。對于前者要求建設起的數(shù)據(jù)庫具有完整性和一致性,且具有一定的數(shù)據(jù)安全性,而對于后者則要求程序界面友好、功能完備,容易使用,具有流行軟件的操作習慣等特點。經(jīng)過詳細的調查分析,我選用Dreamweaver8.0作為前端開發(fā)工具,利用其提供的集成開發(fā)環(huán)境及支持面向對象的各種標準化的控件,尤其是對ADO的支持完成對數(shù)據(jù)庫的各種操作,到達對學生學籍管理的目的。設計時首先在短時間內先建設系統(tǒng)應用原型,然后對初始原型系統(tǒng)進展需求迭代,不斷修正和改良,直到形成用戶滿意的實際可行系統(tǒng)。經(jīng)過詳細的調研,并屢次與學生檔案管理的教師進展研討后,首先加深了對學生信息管理業(yè)務的深刻了解,其次在充分熟悉學生檔案管理業(yè)務的同時,將整個學生檔案管理的業(yè)務流程描述如下:新生入校,首先報到并進展注冊登記,然后到財務部門繳費。根據(jù)學生被錄取的專業(yè),持繳費單到所在系或部注冊。到系或部注冊后,根據(jù)選報專業(yè)分配到班級。進入正常大學生活,參加各種教學活動,學期期末要求每位同學參加各課的期末考試??荚囃戤叄筛飨祷虿繉⒏魑煌瑢W的考試成績及其他一些相關信息紀錄至每個同學的檔案中。第二章數(shù)據(jù)庫管理系統(tǒng)的概述數(shù)據(jù)庫管理系統(tǒng)(databasemanagementsystem)是一種操縱和管理數(shù)據(jù)庫的大型軟件,是用于建設、使用和維護數(shù)據(jù)庫,簡稱dbms。它對數(shù)據(jù)庫進展統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。用戶通過dbms訪問數(shù)據(jù)庫中的數(shù)據(jù),數(shù)據(jù)庫管理員也通過dbms進展數(shù)據(jù)庫的維護工作。它提供多種功能,可使多個應用程序和用戶用不同的方法在同時或不同時刻去建設,修改和詢問數(shù)據(jù)庫?!?】它使用戶能方便地定義和操縱數(shù)據(jù),維護數(shù)據(jù)的安全性和完整性,以及進展多用戶下的并發(fā)控制和恢復數(shù)據(jù)庫。按功能劃分,數(shù)據(jù)庫管理系統(tǒng)大致可分為6個局部:(1)模式翻譯:提供數(shù)據(jù)定義語言(ddl)。用它書寫的數(shù)據(jù)庫模式被翻譯為內部表示。數(shù)據(jù)庫的邏輯構造、完整性約束和物理儲存構造保存在內部的數(shù)據(jù)字典中。數(shù)據(jù)庫的各種數(shù)據(jù)操作(如查找、修改、插入和刪除等)和數(shù)據(jù)庫的維護管理都是以數(shù)據(jù)庫模式為依據(jù)的。(2)應用程序的編譯:把包含著訪問數(shù)據(jù)庫語句的應用程序,編譯成在dbms支持下可運行的目標程序。(3)交互式查詢:提供易使用的交互式查詢語言,如sql。dbms負責執(zhí)行查詢命令,并將查詢結果顯示在屏幕上。(4)數(shù)據(jù)的組織與存?。禾峁?shù)據(jù)在外圍儲存設備上的物理組織與存取方法。⑸事務運行管理:提供事務運行管理及運行日志,事務運行的安全性監(jiān)控和數(shù)據(jù)完整性檢查,事務的并發(fā)控制及系統(tǒng)恢復等功能。(6)數(shù)據(jù)庫的維護:為數(shù)據(jù)庫管理員提供軟件支持,包括數(shù)據(jù)安全控制、完整性保障、數(shù)據(jù)庫備份、數(shù)據(jù)庫重組以及性能監(jiān)控等維護工具?;陉P系模型的數(shù)據(jù)庫管理系統(tǒng)已日臻完善,并已作為商品化軟件廣泛應用于各行各業(yè)。它在各戶服務器構造的分布式多用戶環(huán)境中的應用,使數(shù)據(jù)庫系統(tǒng)的應用進一步擴展。隨著新型數(shù)據(jù)模型及數(shù)據(jù)管理的實現(xiàn)技術的推進,可以預期dbms軟件的性能還將更新和完善,應用領域也將進一步地拓寬。它所提供的功能有以下幾項:〔1〕數(shù)據(jù)定義功能。DBMS提供相應數(shù)據(jù)語言來定義〔DDL〕數(shù)據(jù)庫構造,它們是刻畫數(shù)據(jù)庫框架,并被保存在數(shù)據(jù)字典中?!?〕數(shù)據(jù)存取功能。DBMS提供數(shù)據(jù)操縱語言〔DML〕,實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的根本存取操作:檢索,插入,修改和刪除?!?〕數(shù)據(jù)庫運行管理功能。DBMS提供數(shù)據(jù)控制功能,即是數(shù)據(jù)的安全性、完整性和并發(fā)控制等對數(shù)據(jù)庫運行進展有效地控制和管理,以確保數(shù)據(jù)正確有效。〔4〕數(shù)據(jù)庫的建設和維護功能。包括數(shù)據(jù)庫初始數(shù)據(jù)的裝入,數(shù)據(jù)庫的轉儲、恢復、重組織,系統(tǒng)性能監(jiān)視、分析等功能?!?〕數(shù)據(jù)庫的傳輸。DBMS提供處理數(shù)據(jù)的傳輸,實現(xiàn)用戶程序與DBMS之間的通信,通常與操作系統(tǒng)協(xié)調完成。第三章程序開發(fā)的技術根基3.1HTML語言HTML〔HyperTextMarkupLanguage超文本標記語言〕是一種用來制作超文本文檔的簡單標記語言。與常見的字處理文件不同,Web頁以超文本標識語言編排格式。HTML文件是帶有特定HTML插入標記的用以編排文檔屬性和格式的標準文本文件。它能獨立于各種操作系統(tǒng)平臺〔如UNIX,WINDOWS等〕。自1990年以來HTML就一直被用作WorldWideWeb上的信息表示語言,用于描述Homepage的格式設計和它與WWW上其它Homepage的連結信息。HTML文檔〔即Homepage的源文件〕是一個放置了標記的ASCII文本文件,通常它帶有.html或.htm的文件擴展名。生成一個HTML文檔主要有以下三種途徑:〔1〕手工直接編寫〔例如用你所喜愛的ASCII文本編輯器或其它HTML的編輯工具〕。〔2〕通過某些格式轉換工具將現(xiàn)有的其它格式文檔〔如WORD文檔〕轉換成HTML文檔?!?〕由Web服務器〔或稱服務器〕一方實時動態(tài)地生成。一般的HTML頁面具有如下的構造:〈html〉<head><title>,<base>,<link>,<isindex>,<meta></head><body>這是HTML正文局部〈/body〉</html>可見在一個HTML網(wǎng)頁文件中,一般必須有一對〈html〉</html>標記作為文件的開頭和結尾,在<html>標記后是頭部標記<head></head>,其后是實體標記<body></body>。3.2ASP技術3.2.1ASP簡介ASP〔ActiveSeverPages動態(tài)網(wǎng)頁〕是微軟公司推出的一種用以取代CGI(CommonGatewayInterface)技術。目前,Internet上的許多基于Windows平臺的Web站點已開場應用ASP來替換CGI。ASP是一個位于服務器端的腳本運行環(huán)境。通過這種環(huán)境,用戶可以創(chuàng)立和運行動態(tài)的交互式Web服務器應用程序,如交互式動態(tài)網(wǎng)頁,包括使用HTML表單收集和處理信息、上傳與下載等?!?】通常情況下,用戶通過瀏覽器看到的網(wǎng)頁大多是靜態(tài)的,目前Internet上的許多站點,仍然提供“靜態(tài)〞〔static〕的主頁內容。所謂“靜態(tài)〞,是指站點的主頁內容是“固定不變〞的。一個“靜態(tài)〞的站點,假設要更新主頁的內容,必須手動更新其HTML的文件數(shù)據(jù)。而隨著Web技術的開展,用戶希望能夠看到根據(jù)要求而動態(tài)生成的主頁,例如響應用戶查詢數(shù)據(jù)庫的要求而生成報表等。站點服務器收到要求執(zhí)行的應用程序,分析表單〔form〕的輸入數(shù)據(jù),將執(zhí)行的結果以HTML的格式傳送給瀏覽器。根據(jù)用戶請求生成動態(tài)主頁的傳統(tǒng)方法有CGI、ISAPI等。CGI是根據(jù)瀏覽器端的請求激活響應進程,每一個請求對應一個進程。當同時有很多請求時,程序擠占系統(tǒng)資源,造成效率低下。ISAPI針對這一缺點進展了改良,利用dll〔動態(tài)鏈接庫技術〕,以線程代替進程,提高了性能和速度,但要考慮線程的同步問題,而且開發(fā)步驟煩瑣。這兩種技術和另一普遍使用的開發(fā)動態(tài)網(wǎng)頁的技術Java都還存在著另外一個問題,那就是開發(fā)困難,程序的開發(fā)和HTML寫作是兩個完全不同的過程,需要專門的程序員開發(fā)?!?】ASP使用的ActiveX技術基于開放設計環(huán)境,用戶可以自己定義和制作組件參加其中,使自己的動態(tài)網(wǎng)頁幾乎具有無限的擴大能力,這是傳統(tǒng)的CGI等程序所遠遠不及的地方。3.2.2ASP工作原理ASP與常見的在Client端實現(xiàn)動態(tài)主頁的技術如Javaapplet、ActiveXControl、VBScript、JavaScript等不同,ASP中的命令和Script語句都是由服務器來解釋執(zhí)行的,執(zhí)行結果產(chǎn)生動態(tài)生成的Web頁面并送到瀏覽器;而Client端的Script命令則是由瀏覽器來解釋執(zhí)行。由于ASP是在服務器端解釋執(zhí)行,開發(fā)者可以不必考慮瀏覽器是否支持ASP,也不必擔憂別人下載程序從而竊取編程邏輯。ASP程序通過后綴名為.asp的ASP文件來實現(xiàn)其功能,一個.asp文件相當于一個可執(zhí)行文件,因此必須放在Web服務器上有可執(zhí)行權限的目錄下?!?】當用戶從瀏覽器輸入了.asp文件的地址后,瀏覽器就將這個URL請求發(fā)給Web服務器。如果Web服務器上裝ASP,就調用ASP,ASP讀出相應.asp文件,解釋并執(zhí)行命令,動態(tài)生成一個HTML頁面回傳Web服務器,然后Web服務器把結果發(fā)送給瀏覽器。ASP文件的制作和HTML類似,且可和HTML開發(fā)集成,可以在同一個過程完成,利用ASP將可以執(zhí)行的腳本嵌入到HTML文件中,這使得HTML文件的編寫與腳本的開發(fā)融合在一起。通過ASP內置的對象、服務器組件〔SeverComponent〕可以完成非常復雜的任務,而且用戶還可以自己開發(fā)或利用別人開發(fā)的服務器組件完成專門的任務。ASP與網(wǎng)關及服務器擴展模式相比有以下優(yōu)點:〔1〕完全與HTML文件融合在一起;〔2〕容易創(chuàng)立,不需要其它編譯、鏈接程序;〔3〕面向對象的并通過ActiveXSever對象可擴展。在電子商務中,對用戶而言,進展網(wǎng)上信息查詢的目的是尋找自己需要的產(chǎn)品或服務,而對于服務提供者來說,其目的則是向用戶推銷自己的產(chǎn)品或服務。因此,讓用戶通過瀏覽器查詢服務的后端數(shù)據(jù)是許多Web服務提供者必須提供的服務,ASP通過內置的ADODB組件來實現(xiàn)這一功能??梢允褂肁DO去編寫緊湊簡明的腳本,以便連接到ODBC兼容的數(shù)據(jù)庫和OLEDB兼容的數(shù)據(jù)源。3.2.3ASP的發(fā)布當編輯好ASP文件后,必需發(fā)布后才能實現(xiàn)其功能,ASP文件本身并不能運行。我們用Windows自帶的工具IIS〔windows2000XP〕來發(fā)布ASP文件。〔Windows98用PWS發(fā)布〕【5】.在WindowsXP中翻開控制面板→管理工具→Internet信息服務。雙擊Internet信息服務,于是我們就來到了IIS的使用界面。翻開網(wǎng)站→默認網(wǎng)站.在默認網(wǎng)站內新建設虛擬目錄.為目錄起個別名例如“網(wǎng)上購物〞→選擇內容的目錄路徑→設置權限〔通常不允許訪問寫入權限,防止網(wǎng)頁被改〕順利完成以上操作就表示你已經(jīng)成功發(fā)布了你的網(wǎng)頁?!病熬W(wǎng)上購物〞已在默認網(wǎng)站內〕.3.3數(shù)據(jù)庫原理3.3.1SOL語言簡單介紹SQL是英文StructuredQueryLanguage的縮寫,意思為構造化查詢語言。SQL語言的主要功能就是同各種數(shù)據(jù)庫建設聯(lián)系,進展溝通。按照ANSI〔美國國家標準協(xié)會〕的規(guī)定,SQL被作為關系型數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句可以用來執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。目前,絕大多數(shù)流行的關系型數(shù)據(jù)庫管理系統(tǒng),如Oracle、Sybase、MicrosoftSQLServer、Access等都采用了SQL語言標準。雖然很多數(shù)據(jù)庫都對SQL語句進展了再開發(fā)和擴展,但是包括Select、Insert、Update、Delete、Create以及Drop在內的標準的SQL命令仍然可以被用來完成幾乎所有的數(shù)據(jù)庫操作。在眾多的SQL命令中,select語句應該算是使用最頻繁的。select語句主要被用來對數(shù)據(jù)庫進展查詢并返回符合用戶查詢標準的結果數(shù)據(jù)。select語句中位于select關鍵詞之后的列名用來決定哪些列將作為查詢結果返回。用戶可以按照自己的需要選擇任意列,還可以使用通配符“*〞來設定返回表格中的所有列。select語句中位于from關鍵詞之后的表格名稱用來決定將要進展查詢操作的目標表格。除了上面所提到的運算符外,LIKE運算符在where條件從句中也非常重要。LIKE運算符的功能非常強大,通過使用LIKE運算符可以設定只選擇與用戶規(guī)定格式一樣的記錄。3.3.2ADO技術介紹ADO〔ActiveXDataObjects〕技術是微軟公司推出的數(shù)據(jù)庫連接技術,運用該技術可以對各種數(shù)據(jù)庫〔如SQLServer、Access、Oracle及Sybase等〕的鏈接、查詢、存取等操作。ADO對象給開發(fā)人員提供一種快捷、簡單、高效的數(shù)據(jù)庫訪問方法,ADO可以包含在腳本中來產(chǎn)生對數(shù)據(jù)庫的連接,并從數(shù)據(jù)庫表中讀取數(shù)據(jù),形成實際要使用的對象集合。而且,對于數(shù)據(jù)資源,提供了應用程序一級的界面。不過,ADO并不與數(shù)據(jù)資源直接通信,而是通過稱為OLEDB的中間界面,對于數(shù)據(jù)資源〔MicrosoftSQLServer〕,OLEDB提供了系統(tǒng)一級的界面。ADO是一組優(yōu)化的訪問數(shù)據(jù)庫的對象集,為Web數(shù)據(jù)庫開發(fā)者提供完整的網(wǎng)站數(shù)據(jù)庫解決方案?!?】ADO可以與ASP嚴密結合,運行在服務器端,從而制作出功能完善的數(shù)據(jù)庫網(wǎng)頁。ADO除了支持各種數(shù)據(jù)庫平臺外,它還支持VB、VC和Script等多種程序設計語言。在利用ADO技術進展數(shù)據(jù)庫網(wǎng)頁制作的第一步就是要建設服務器端的數(shù)據(jù)庫,即后臺數(shù)據(jù)庫,一般可選擇SQLServer或者Access作為后臺數(shù)據(jù)庫。本次的畢業(yè)設計是以Access作為后臺數(shù)據(jù)庫。第四章學生信息管理系統(tǒng)數(shù)據(jù)庫課程設計與實現(xiàn)4.1需求分析4.1.1用戶調查經(jīng)過詳細的調研,并屢次與學生檔案管理的教師進展研討后,首先加深了對學生信息管理業(yè)務的深刻了解,其次在充分熟悉學生檔案管理業(yè)務的同時,將整個學生檔案管理的業(yè)務流程描述如下:新生入校,首先報到并進展注冊登記,然后到財務部門繳費。根據(jù)學生被錄取的專業(yè),持繳費單到所在系或部注冊。到系或部注冊后,根據(jù)選報專業(yè)分配到班級。進入正常大學生活,參加各種教學活動,學期期末要求每位同學參加各課的期末考試??荚囃戤?,由各系或部將各位同學的考試成績及其他一些相關信息紀錄至每個同學的檔案中。根據(jù)以上總結,得到其現(xiàn)行的業(yè)務流程如圖1-1所示。新生新生辦理登記手續(xù)財務處學生處至系或部系或局部班安排課程教室開場學習活動考試成績獎懲信息檔案信息學生處學生圖1-1現(xiàn)行學生信息管理業(yè)務流程圖4.1.2構造系統(tǒng)的邏輯模型構造系統(tǒng)的邏輯模型的工具是數(shù)據(jù)流圖和數(shù)據(jù)字典。數(shù)據(jù)流圖中沒有任何具體的物理元素,只是用來描繪信息在系統(tǒng)中的流動和處理情況。數(shù)據(jù)流圖共有四種根本符號:矩形表示數(shù)據(jù)的源點和終點〔或稱為外部項〕,圓或橢圓表示變換數(shù)據(jù)的處理,向右開口的矩形表示數(shù)據(jù)存儲,箭頭表示數(shù)據(jù)流,即特定數(shù)據(jù)的流動方向?!?】根據(jù)現(xiàn)行學生信息管理的業(yè)務流程,首先確定數(shù)據(jù)流圖中的源點和終點都選定為學生,如此就得到了學生檔案管理系統(tǒng)的根本系統(tǒng)模型,如圖1-2所示。學生檔案管理學生學生根本信息學生檔案管理學生學生根本信息成績等信息學生圖1-2學生檔案管理系統(tǒng)的根本系統(tǒng)模型根據(jù)根本系統(tǒng)模型,對其逐步西化,得到描繪邏輯系統(tǒng)西化后的數(shù)據(jù)流圖,如圖1-3所示。D3課程信息表D1學生信息表D3課程信息表D1學生信息表課程信息學生根本信息課程信息學生根本信息根本信息根本信息1.3課程確定1.3課程確定1.1注冊根據(jù)專業(yè)確定所修課程學生1.2建檔分班新生報道根據(jù)專業(yè)確定所修課程學生1.2建檔分班新生報道成績信息成績信息班級信息班級信息D2班級信息表D2班級信息表D4成績信息表D4成績信息表學生畢業(yè)分檔1.4處理檔案學生畢業(yè)分檔1.4處理檔案成績信息圖1-3學生檔案系統(tǒng)數(shù)據(jù)流圖4.1.3確定目標系統(tǒng)的功能通過詳細的用戶調查,在現(xiàn)行的業(yè)務處理流程和數(shù)據(jù)流圖的根基上,就可以根本確定目標系統(tǒng)要到達的目標了。需求分析的任務是確定系統(tǒng)必須完成的工作,也就是對目標系統(tǒng)提出完整、標準、清晰、具體的要求。在經(jīng)過多方了解和調查后,根本清楚了學生檔案信息管理的功能需求,學生檔案管理系統(tǒng)必須完成以下功能:數(shù)據(jù)添加功能:對于新生報道,系統(tǒng)必須具有班級的建設、課程的設置,如果新增專業(yè),則能添加新專業(yè),期末學生的考試成績及獎懲信息必須能夠錄入。數(shù)據(jù)修改功能:當上述資料發(fā)生變化或有錯誤信息輸入時,應能夠及時對數(shù)據(jù)進展修改和補充。數(shù)據(jù)查詢功能:該系統(tǒng)的主要功能致意即根據(jù)用戶提供的相關信息,能夠及時查找出對應的學生信息,系統(tǒng)應該提供多種查詢方法,以便滿足用戶的不同需求。數(shù)據(jù)打印功能:學生根本信息和成績錄入后應可以打印出來形成文字檔案,裝入學生檔案,這也是學生學籍管理系統(tǒng)必須具備的功能。4.1.4數(shù)據(jù)分析——概念模型分析需求分析階段主要有兩個方面的任務:分析用戶的數(shù)據(jù)要求和分析用戶的處理要求。通過以上分析,我們已經(jīng)根本了解了用戶對處理的要求,接下來需要的工作是分析用戶對數(shù)據(jù)的要求。為了把用戶的數(shù)據(jù)清晰明確地表達出來,系統(tǒng)分析員通常建設一個概念性的數(shù)學模型。概念性模型是一種面向問題的數(shù)學模型,是按用戶的觀點來對數(shù)據(jù)和信息建模。最常用的表示概念性數(shù)據(jù)模型的方法是實體-聯(lián)系方法〔Entity-RelationshipApproach〕。這種方法用E-R圖描述現(xiàn)實世界中的實體,而不涉及這些實體在系統(tǒng)中的實現(xiàn)方法,該方法又稱為E-R模型,E-R圖中共用三種符號:實體、屬性和聯(lián)系?!?】通常實體用矩形來表示,屬性用橢圓或圓角矩形來表示,聯(lián)系用菱形來表示。聯(lián)系有分為一對一、一對多和多對多三種類型。數(shù)據(jù)庫建模經(jīng)過上面的分析,能夠提取以下幾個實體:學生、課程、專業(yè)、班級等。它們的實體圖分別如圖1-4、圖1-5、圖1-6、圖1-7所示。姓名學姓名學號籍貫性別學生籍貫性別學生郵政編碼出生日期郵政編碼出生日期圖1-4學生實體圖所屬專業(yè)課程名稱課程圖1-5課程實體圖所屬專業(yè)課程名稱課程所屬院系專業(yè)名稱專業(yè)所屬院系專業(yè)名稱專業(yè)圖1-6專業(yè)實體圖所在院系人數(shù)班級名稱所在院系人數(shù)班級名稱班級班級輔導員所在教室輔導員所在教室圖1-7班級實體圖在找到所有實體的根基上,需要進一步分析各實體之間的聯(lián)系。經(jīng)過分析兩兩實體之間的聯(lián)系,然后進展合并,給出所有尸體的聯(lián)系圖即E-R圖,如圖1-8所示。課程學生學課程學生學屬于屬于成績成績屬于屬于專業(yè)班級專業(yè)班級圖1-8學生信息管理的E-R圖從以上E-R圖中可以看到,學生和課程兩個實體之間的聯(lián)系的類型是多對多的,其他實體之間的類型都是屬于一對一或一對多的聯(lián)系。在考察多對多的聯(lián)系中,一定要注意這時的聯(lián)系“學〞有時也可以有屬性“成績〞,表示某位同學選修某門課程時必須給出其成績,該屬性既不屬于實體學生,也不屬于實體課程。特別需要提醒的是,一般只有多對多的聯(lián)系才需要考慮其聯(lián)系的屬性。關系描述的設計根據(jù)以上各實體圖和學生信息管理的E-R圖,經(jīng)過轉換,可以導出各個關系。其轉換規(guī)則為:首先每個實體轉化為一個關系,有屬性的聯(lián)系也應轉化為一個關系,然后需要給出每個關系的關鍵字。根據(jù)以上規(guī)則,直接給出所有關系。學生〔學號、姓名、性別、政治面貌、出生日期、專業(yè)、班級、家庭住址、聯(lián)系方式、備注〕關鍵字為學號。課程〔課程名稱、所屬專業(yè)〕關鍵字是課程名稱。專業(yè)〔專業(yè)名稱、所屬院系〕關鍵字為專業(yè)名稱。班級〔班級名稱、所屬院系、輔導員、教室、人數(shù)〕關鍵字為班級編號。成績〔學號、姓名、專業(yè)、課程名稱、所在學院、性別、成績〕關鍵字是學號與課程名稱。在考慮系統(tǒng)安全的前提下,需要增加用戶關系和使用關系,其關系模式如下:用戶〔用戶名、密碼、用戶ID〕關鍵字為用戶名。系統(tǒng)日志〔用戶名、登錄日期、登錄時間〕。4.2總體設計系統(tǒng)設計一般分為總體設計和詳細設計。經(jīng)過需求分析階段的工作,已經(jīng)清楚系統(tǒng)必須完成的工作,下面的工作就應該是決定“如何做〞的問題,總體設計的根本目的的就是“概要地說系統(tǒng)應該如何實現(xiàn)通過該階段的工作將劃分出組成系統(tǒng)的物理元素—程序、文件、數(shù)據(jù)庫、文檔等,另一方面的主要工作是設計軟件的構造,即確定系統(tǒng)都由哪些模塊組成及模塊之間的相互關系。4.2.1軟件系統(tǒng)構造的設計得到新的業(yè)務流程根據(jù)系統(tǒng)分析得到的現(xiàn)行業(yè)務處理流程,在與用戶反復研究協(xié)商后,首先得到目標系統(tǒng)即學生學籍管理系統(tǒng)的業(yè)務流程,其處理流程如圖2-1所示。分班并開場學習系統(tǒng)登錄新生報道分班并開場學習系統(tǒng)登錄新生報道信息錄入用戶初始化信息錄入用戶初始化完畢退出登錄考試錄入成績信息修改與完畢退出登錄考試錄入成績信息修改與獎懲信息錄入圖2-1學生信息系統(tǒng)的業(yè)務流程針對新的處理流程,現(xiàn)具體描述如下:用戶登錄:對系統(tǒng)進展初始化設置,包括對專業(yè)、課程和班級的設置。新生報道:按專業(yè)分班進展教學,并為每位新同學分配學號,然后對學生根本信息進展錄入。學生分配到班級、領教材開場新的大學學習生活。用戶對學生在校期間得到的獎懲信息進展錄入,并可以對根本信息發(fā)生變化的學生在系統(tǒng)中進展修改。期末考試完畢,用戶把每個學生的考試成績進展錄入、修改和查詢。系統(tǒng)功能構造圖根據(jù)系統(tǒng)分析階段得到的數(shù)據(jù)流圖,采用軟件設計的概念和原理,在與用戶反復研究和協(xié)商后,在保證系統(tǒng)根本功能要求的前提下,結合系統(tǒng)新的業(yè)務流程確定系統(tǒng)必須具備的所有功能,由此給出學生學籍管理系統(tǒng)的系統(tǒng)功能構造圖,如圖2-2所示。學生學籍管理系統(tǒng)學生學籍管理系統(tǒng)學籍管理系統(tǒng)學籍管理系統(tǒng)添加用戶修改密碼添加用戶修改密碼打印學生信息卡添加獎懲信息查詢修改信息添加學籍信息打印學生信息卡添加獎懲信息查詢修改信息添加學籍信息退出系統(tǒng)退出系統(tǒng)專業(yè)與課程班級管理專業(yè)與課程班級管理設置專業(yè)課程課程信息添加班級專業(yè)信息修改班級設置專業(yè)課程課程信息添加班級專業(yè)信息修改班級修改信息設置類型添加信息添加專業(yè)信息修改信息設置類型添加信息添加專業(yè)信息成績管理成績管理添加成績信息刪除成績信息查詢修改成績信息添加成績信息刪除成績信息查詢修改成績信息圖2-2學生學籍管理系統(tǒng)功能構造圖4.2.2數(shù)據(jù)庫的設計在需求分析階段已完成了系統(tǒng)的數(shù)據(jù)分析。根據(jù)數(shù)據(jù)分析階段建設的概念模型,已經(jīng)得出滿足第三范式的假設干個關系描述,這階段的主要工作就是把前一階段的成果轉化為具體的數(shù)據(jù)庫。一般把數(shù)據(jù)庫的設計分為數(shù)據(jù)庫的邏輯設計和數(shù)據(jù)庫的物理設計兩個步驟。數(shù)據(jù)庫的邏輯設計在完成數(shù)據(jù)的概念模型設計即E-R圖后,即可進入數(shù)據(jù)庫的邏輯設計階段。數(shù)據(jù)庫的邏輯設計即把得到的滿足第三范式的關系轉化為特定的數(shù)據(jù)庫管理系統(tǒng)下的數(shù)據(jù)庫。根據(jù)前面得到的各個關系,現(xiàn)把它們轉化為數(shù)據(jù)表?!?】學生信息表:學號、姓名、性別、政治面貌、出生日期、專業(yè)、班級、家庭住址、聯(lián)系、備注。此表共10個字段,由于在校所有學生中,不可能存在兩個學生的學號一樣,所以在本表中學號作為學生信息表的主鍵。課程信息表:課程名稱、所屬專業(yè)。專業(yè)信息表:專業(yè)名稱、所屬院系。此表以專業(yè)名稱為主鍵。班級信息表:班級名稱、所屬專業(yè)、輔導員、教室、人數(shù)。此表公有五個字段,以學號和班級共同為主鍵,用于紀錄學生所在班級的信息。成績信息表:學號、姓名、專業(yè)、程名稱、所在學院、性別、成績。此表共有七個字段,以學號和課程名稱共同為主鍵,用于紀錄學生在校期間的各課考試。用戶名:用戶名、密碼、用戶ID。此表用于系統(tǒng)對操作員的設置。系統(tǒng)日志:用戶名、登錄時間、登錄時間、此表用于紀錄系統(tǒng)的使用情況。數(shù)據(jù)庫的物理設計在完成數(shù)據(jù)庫的邏輯設計后,即可開場數(shù)據(jù)庫的物理設計?;谝陨蠑?shù)據(jù)庫的邏輯設計,考慮程序設計的簡易性及通用性,本學生學籍管理系統(tǒng)采用Microsoft的Access2003數(shù)據(jù)庫,并在其下創(chuàng)立9個數(shù)據(jù)庫,其構造分別如下:學生信息表〔xsXJ〕,共有10個字段,分別為:學號、姓名、性別、政治面貌、出生日期、專業(yè)、班級、聯(lián)系、家庭住址、備注。見表2-1。字段名數(shù)據(jù)類型字段長度與格式關鍵字學號文本15是姓名文本20否性別文本5否政治面貌文本12否出生日期日期型YYYY-MM-DD否專業(yè)文本20否班級文本20否家庭住址文本50否聯(lián)系文本15否備注文本50否表2-1學生信息表構造課程信息表〔xsKC〕,本表有兩字段:課程名稱、所屬專業(yè)。見表2-2。字段名數(shù)據(jù)類型字段長度與格式關鍵字課程名稱文本20是所屬專業(yè)文本20否表2-2課程信息表的構造班級信息表〔xsBJ〕,共有四個字段分別為:班級名稱、所屬院系、輔導員、教室、人數(shù)。見表2-3。字段名數(shù)據(jù)類型字段長度與格式關鍵字班級名稱文本20是所屬院系文本20否輔導員文本10否教室文本15否人數(shù)文本3否表2-3班級信息表的構造④專業(yè)信息表〔xsZY〕,本表有兩個字段:專業(yè)名稱、所屬院系。見表2-4。字段名數(shù)據(jù)類型字段長度與格式關鍵字專業(yè)名稱文本20是所屬院系文本20否表2-4專業(yè)信息表的構造⑤成績信息表〔xsScore〕,共有6個字段分別為:學號、姓名、專業(yè)、課程名稱、成績。見表2-5。字段名數(shù)據(jù)類型字段長度與格式關鍵字學號文本15是姓名文本20否專業(yè)文本20否課程名稱文本20是所在學院文本20否性別文本5否成績文本5否表2-5成績信息表的構造4.3詳細設計4.3.1具體描述詳細設計階段的根本任務是確定應該怎樣具體實現(xiàn)所要求的系統(tǒng),也就是經(jīng)過這個階段的設計工作,應該得出對目標系統(tǒng)的準確描述,從而在系統(tǒng)實現(xiàn)階段可以把這個描述直接翻譯成用某種程序設計語言書寫的程序?!?0】把經(jīng)過總體設計得到的各個模塊詳細的加以描述。其中系統(tǒng)功能模塊圖如圖3-1所示,主程序流程圖如圖3-2所示。學生學籍管理系統(tǒng)學生學籍管理系統(tǒng)系統(tǒng)管理學籍管理專業(yè)課程管理班級管理成績管理幫助添加班級查詢班級注銷班級學生添加學生查詢學生注銷學生打印管理日志用戶管理重新登陸系統(tǒng)日志退出系統(tǒng)設置專業(yè)設置課程查詢修改添加成績查詢修改刪除成績幫助關于系統(tǒng)信息圖3-1軟件系統(tǒng)的模塊構造圖查詢查詢選擇插入顯示主菜單刪除用戶登陸修改開場圖3-2軟件系統(tǒng)主程序的程序流程圖4.3.2具體實現(xiàn)步驟:登錄界面如以下列圖:圖3-3學生信息管理系統(tǒng)登錄界面登錄之后,進入選擇對數(shù)據(jù)庫進展什么操作,如圖:圖3-4對數(shù)據(jù)庫操作內容〔1〕假設選擇查看網(wǎng)站根本信息,則進入如下界面:圖3-5網(wǎng)站根本信息編輯假設進展管理員設置,則進入如下界面:圖3-6管理員設置頁面界面實現(xiàn)代碼:<%ifmenu="admin"thenSetrsj=Server.CreateObject("ADODB.Recordset")sql="select*from[admin]wherename='"&user&"'"rsj.opensql,conn,1,1ifrsj.eofthenResponse.Write("<divalign=center><br><br><br><br><br><br><br>·不存在該用戶或者該用戶已經(jīng)是管理員<br><br><ahref='javascript:history.go(-1)'><imgborder=0src=menu/face12.gifalign=absmiddle><fontcolor=#000000>返回重新填寫!</font></a></div>")elsefen=rsj("fen")lei=split(fen,"|")iflei(2)="0"thenResponse.Write("<divalign=center><imgsrc=menu/face12.gif>貼心提示:“3.可能是您的后臺等級不適和該操作;因此系統(tǒng)已自動將其保存,望以后多努力哦!〞</div>")response.Endendifendifsetrs=server.createobject("adodb.recordset")sql="select*from[admin]"rs.opensql,conn,1,3ifad="save"thenrs.addnewrs("name")=request("name")rs("pass")=md5((request("pass")),32)rs("fen")="0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0"rs("bei")=request("bei")rs.updaters.closeresponse.write"<script>alert('管理員添加成功');location.href='?menu=admin'</script>"endif〔3〕假設選擇進入學生管理操作,則進入如下界面:圖3-7學生管理操作頁面界面實現(xiàn)代碼:<%ifmenu="shen"thenSetrsj=Server.CreateObject("ADODB.Recordset")sql="select*from[admin]wherename='"&user&"'"rsj.opensql,conn,1,1ifrsj.eofthenResponse.Write("<divalign=center><br><br><br><br><br><br><br>·不存在該用戶或者該用戶已經(jīng)是管理員<br><br><ahref='javascript:history.go(-1)'><imgborder=0src=menu/face12.gifalign=absmiddle><fontcolor=#000000>返回重新填寫!</font></a></div>")elsefen=rsj("fen")lei=split(fen,"|")iflei(8)="0"thenResponse.Write("<divalign=center><imgsrc=menu/face12.gif>貼心提示:“7.可能是您的后臺等級不適和該操作;因此系統(tǒng)已自動將其保存,望以后多努力哦!〞</div>")response.Endendifendifshen="no"setrs=server.createobject("adodb.recordset")sql="select*from[user]whereok='"&shen&"'"rs.opensql,conn,1,1ifad="save"thenname=request("name")setrsa=server.createobject("adodb.recordset")sql="select*from[user]wherename='"&name&"'"rsa.opensql,conn,1,3rsa("ok")="yes"rsa.updatersa.closeresponse.Redirect("?menu=shen")endif%><tablewidth="95%"border="0"align="center"cellpadding="5"cellspacing="1"class="a2"><tr><tdcolspan="6"class="a1"><divalign="center"class="STYLE1">等待審核信息</div></td></tr><tr><tdwidth="11%"class="a4"><divalign="center">姓名</div></td><tdwidth="10%"class="a4"><divalign="center">性別</div></td><tdwidth="11%"class="a4"><divalign="center">年齡</div></td><tdwidth="21%"class="a4"><divalign="center"></div></td><tdwidth="30%"class="a4"><divalign="center"></div></td><tdwidth="17%"class="a4"><divalign="center">審核</div></td></tr><%dowhilenotrs.eof%><tr><tdclass="a4"><divalign="center"><%=rs("name")%></div></td><tdclass="a4"><divalign="center"><%=rs("sex")%></div></td><tdclass="a4"><divalign="center"><%=rs("age")%></div></td><tdclass="a4"><divalign="center"><%=rs("tel")%></div></td><tdclass="a4"><divalign="center"><%=rs("add")%></div></td><tdclass="a4"><divalign="center"><ahref="?menu=shen&ad=save&name=<%=rs("name")%>">通過</a></div></td></tr><%rs.movenextlooprs.closesetrs=nothing%></table><%endif%><%ifmenu="adduser"thenSetrsj=Server.CreateObject("ADODB.Recordset")sql="select*from[admin]wherename='"&user&"'"rsj.opensql,conn,1,1ifrsj.eofthenResponse.Write("<divalign=center><br><br><br><br><br><br><br>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 辦公室租賃合同模板
- 招標文件范本的標準制作流程
- 軟件采購合同樣式
- 碎石采購協(xié)議書格式
- 創(chuàng)新服務采購協(xié)議
- 租房合同解除協(xié)議書范文
- 工程分包合同中的勞務培訓計劃與實施
- 蔬菜購銷合同的解除注意事項
- 礦機設備購買合同示范
- 三方協(xié)議服務共贏
- 2024年河南省中職對口升學高考語文試題真題(解析版)
- 《食品行業(yè)ERP應用》課件
- 41-降低懸挑式卸料平臺安全隱患發(fā)生率 棗莊華廈(4:3定稿)
- 西安交通大學《臨床流行病學》2023-2024學年第一學期期末試卷
- 2024年中考語文試題分類匯編:基礎知識綜合(教師版)
- 期末測試卷(一)2024-2025學年 人教版PEP英語五年級上冊(含答案含聽力原文無聽力音頻)
- 2023-2024學年廣東省深圳市南山區(qū)八年級(上)期末英語試卷
- 期末 (試題) -2024-2025學年人教PEP版(2024)英語三年級上冊
- 中醫(yī)跨文化傳播智慧樹知到期末考試答案章節(jié)答案2024年浙江中醫(yī)藥大學
- 廣東省中山市2023-2024學年四年級上學期期末數(shù)學試卷
- 剪刀式升降車專項施工方案
評論
0/150
提交評論