第一篇:學生檔案管理系統(tǒng)
本科生畢業(yè)設計
高校數(shù)據(jù)中心—基于WEB的學生檔案管理系統(tǒng)開發(fā)
University Data Center — Development of Student File Management System which based on WEB
學生姓名 所在專業(yè) 所在班級 申請學位 指導教師 副指導教師 答辯時間
職稱 職稱
2011 年 6 月 4 日
目錄
目 錄
設計總說明............................................................................................................................I INTRODUCTION..............................................................................................................II 1 緒論..............................................................................................................................1 1.1 1.2 1.3 1.4 2 立項背景..............................................................................................................1 項目目的和意義..................................................................................................1 國內(nèi)外現(xiàn)狀及其存在的問題..............................................................................2 研究目標..............................................................................................................2
系統(tǒng)開發(fā)技術綜述......................................................................................................3 2.1.NET技術綜述........................................................................................................3 2.2 ADO.NET...................................................................................................................4 2.2.1 ADO.NET概述...................................................................................................4 2.2.2 ADO數(shù)據(jù)訪問接口...........................................................................................5 2.3 關于B/S架構......................................................................................................5 2.3.1 B/S架構簡介...................................................................................................5 2.3.2 B/S體系的三層結構.......................................................................................6 需求分析......................................................................................................................7 3.1 3.2 3.3 功能需求分析......................................................................................................7 系統(tǒng)的實現(xiàn)目標..................................................................................................7 可行性分析..........................................................................................................7
經(jīng)濟可行性...................................................................................................8 技術可行性...................................................................................................8 性能需求分析...............................................................................................8 運行需求分析...............................................................................................9 3.3.1 3.3.2 3.4 3.4.1 3.4.2 3.5 4 4.1 4.2 4.4 系統(tǒng)配置需求......................................................................................................8
用例分析..............................................................................................................9 數(shù)據(jù)流圖............................................................................................................11 數(shù)據(jù)庫概念結構設計........................................................................................11 數(shù)據(jù)庫詳細實現(xiàn)................................................................................................15
存儲過程.....................................................................................................15 觸發(fā)器.........................................................................................................16
數(shù)據(jù)庫設計................................................................................................................11
4.3 E-R圖....................................................................................................................14 4.4.1 4.4.2
目錄 系統(tǒng)設計....................................................................................................................18 5.1 5.2 5.3 系統(tǒng)體系結構....................................................................................................18 系統(tǒng)模塊劃分....................................................................................................18 主要功能模塊簡介............................................................................................19 登陸界面............................................................................................................21 系統(tǒng)首頁............................................................................................................21 用戶管理............................................................................................................22 類別管理............................................................................................................22
年級管理.....................................................................................................22 學院管理.....................................................................................................23 專業(yè)管理.....................................................................................................23 班級管理.....................................................................................................23 學生檔案信息錄入.....................................................................................24 學生檔案信息管理.....................................................................................24 學生檔案信息導入.....................................................................................25 學生信息統(tǒng)計.............................................................................................25 數(shù)據(jù)庫備份.................................................................................................26 數(shù)據(jù)庫還原.................................................................................................27 系統(tǒng)空間占用信息.....................................................................................27 6 系統(tǒng)詳細設計與實現(xiàn)................................................................................................21 6.1 6.2 6.3 6.4
6.4.1 6.4.2 6.4.3 6.4.4 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 7 7.1 7.2 學生檔案管理....................................................................................................24
系統(tǒng)管理............................................................................................................26
系統(tǒng)測試....................................................................................................................28
測試目標............................................................................................................28 模塊測試............................................................................................................28
登陸測試.....................................................................................................28 用戶管理測試.............................................................................................29 班級管理測試.............................................................................................29 學生檔案管理測試.....................................................................................29 系統(tǒng)管理測試.............................................................................................30 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 8 總結............................................................................................................................31
鳴 謝.................................................................................................................................32 參考文獻.............................................................................................................................33
設計總說明
設計總說明
隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用?;?Web 的學生檔案管理系統(tǒng)正是作為計算機應用的一部分,使用計算機對學生檔案信息進行管理,具有手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生檔案管理的效率,也是教育的科學化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套管理系統(tǒng)成為必要。
學生檔案管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端界面的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫,而對于后者則要求功能完備、易使用、界面美觀等特點。工作主要內(nèi)容包括: 1)設計并實現(xiàn)一個學生檔案管理系統(tǒng)。
2)本系統(tǒng)采用的是基于.NET的Web應用框架構架模式,實現(xiàn)了B/S架構。開發(fā)工具使用了Microsoft公司的visualstudio2008,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,并結合SQL Server與IIS,開發(fā)出一個動態(tài)、交互、高效的Web學生檔案管理系統(tǒng)。
3)本系統(tǒng)的用戶對象針對不同用戶的需求把用戶類別劃分為學生、教師、系統(tǒng)管理員三種。系統(tǒng)功能主要有用戶管理、年級管理、學院(系)管理、專業(yè)管理、班級管理以及學生檔案管理,同時還實現(xiàn)了學生檔案的導入導出、學生人數(shù)統(tǒng)計、數(shù)據(jù)庫遠程備份還原等功能。
4)系統(tǒng)的主要技術及特點有:系統(tǒng)基于C#.NET語言開發(fā),主要采用ASP.NET技術實現(xiàn),頁面與業(yè)務邏輯分離,能夠結合多種開發(fā)語言開發(fā),可采用可擴展的分層配置基本結構,實現(xiàn)靈活多樣的安全配置與設計。系統(tǒng)開發(fā)和維護都在服務器端,用戶只需要打開瀏覽器就可以通過網(wǎng)絡遠程管理、查詢學生檔案。
目前,該系統(tǒng)在本地測試運行正常,系統(tǒng)功能完善、應用方便靈活,界面友好,達到了預期的目標,提高了檔案部門的管理水平。
關鍵詞:學生檔案管理系統(tǒng);管理信息系統(tǒng);ASP.NET;SQL Server;C#.NET
I
INTRODUCTION
INTRODUCTION As science and technology's improvement, computer science was also getting mature and it's great feature was deeply knowed by people.It had entered human society in fields and playing more and more important role.Student file management system that base on Web is a part of computer application.Management of student file information in computer, make several advantages which manual managing can't compare with.For example: quick search, convenient seeking, high dependability, huge memory space, excellent confidentiality, long service life, low cost etc.These advantages can improve the efficiency of student's file administration greatly, and it is important condition of education on it's way to socialization and regularization and connecting with the world.So, it's necessary to develop such a management of system.Student file management system is a typical management information system(MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end.The former require consistency, integrality and security of data.The later should make the application powerful and easily used.It mainly include: 1)Designed and implemented a student file management system.2)The system used web application framework structuring mode that base on.NET and it realized the B/S structure.VisualStudio2008 of Microsoft was used here.Object-oriented developing tools was joined with SQL and IIS in programing a Dynamic,interactive ,efficient Web students file management system.3)User Object of the system divided user into student, teacher and system administrator for the needs of different user.The main system function includes user management, grade management, college management, major management, class management and student file management.In addition, the system realized import & export of student file, amount of student number and remote & reduction of data base.4)Main technology and characteristic of the system: it's development base on C#.NET language and was realized by ASP.NET.Pageframe and service logic of system was divided so it can be developed by different developing language, and the system used expandable Layered configuration basic structure with flexible security configure and design.System development and maintenance were operated in server so users just need to open the browser of network in distance if they want to manage or search student file.So far, the system's normal running in local test, and it performed perfect system function, flexible and convenient application, friendly interface.These advantages improved the management standard of the archives department.Keywords: Management system of student file;Information management system;ASP.NET;SQL Server;C#.NET
II
2011屆本科生畢業(yè)設計
高校數(shù)據(jù)中心--基于WEB的學生檔案管理系統(tǒng)開發(fā)
信息管理與信息系統(tǒng),200711622123,劉鴻輝
指導教師:肖洪生 緒論 1.1 立項背景
隨著時間的推移,我們已經(jīng)進入了21世紀,這是一個信息和數(shù)字技術迅猛發(fā)展的時代,在全球遍布世界的互聯(lián)網(wǎng)絡正在無時無刻、無所不在的滲透到我們的工作、生活和學習中,成為推動社會發(fā)展的強大動力。
在此新世紀的開端,作為培養(yǎng)和造就新世紀人才的教育系統(tǒng)和學校,尤其是高等院校,也面臨同樣的社會環(huán)境變化趨勢。只有率先領悟和認識到信息技術在教學和管理中的作用,并且用它來解決教學和管理中的問題,才能在全球的教育競爭中立于不敗之地。隨著互聯(lián)網(wǎng)的迅猛發(fā)展,為校園的信息化建設提供良好的發(fā)展平臺,而基于B/S的結構的校園信息管理系統(tǒng)具有很強的開放性和擴展性,模塊化設計,集中式管理,靈活開放的平臺管理,可方便地為校園信息化提供豐富的信息服務,從而實現(xiàn)以信息化的教學管理手段來實現(xiàn)學校日常教學和教務管理。通過校園信息化、數(shù)字化建設,利用互聯(lián)網(wǎng)的特點和B/S架構的優(yōu)點,通過信息化系統(tǒng)實現(xiàn)高校各個部門之間的信息交流,實現(xiàn)信息和資源的充分利用,提高高校的競爭力。
校園信息化的建設對學校的發(fā)展有很大的推動作用,其中學校的檔案管理系統(tǒng)是校園信息化建設中的重要一環(huán),負擔著為整個學校提供詳實準確的學生資料,以及一些其它的檔案資料,如何做好檔案管理工作,如何更好的為學院的日常工作和教學提供最有力的支持,檔案管理系統(tǒng)就是在這樣的背景下實施開發(fā)的。
1.2 項目目的和意義
學生檔案管理系統(tǒng)是一間學校不可缺少的部分,它對于學校的決策者和管理者來說都是至關重要的,它能夠為使用者提供豐富的信息和方便快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件或紙質(zhì)檔案,這種管理方式存在著許多的缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這給查找、更新和維護都帶來了不少的困難。這種管理手段很明顯已不能適應時代的發(fā)展,因為它浪費了了許多的人力和物力,在當今信息時代,這種傳統(tǒng)的管理方法必然會被以計算機為基礎的信息管理系統(tǒng)所代替。
眾所周知,計算機已經(jīng)成為我們學習和工作的得力助手。時至今日,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。由于計算機可以代替人工進行許多繁雜的勞動,具備節(jié)省資源、提高
- 1 -
2011屆本科生畢業(yè)設計
工作效率、使敏感文檔更加安全等特點,它已經(jīng)被應用于許多領域。因此使用計算機來實現(xiàn)學生檔案管理的信息化已經(jīng)成為當今時代發(fā)展的需要。應用計算機進行學生檔案管理,歸納起來,主要有以下幾點優(yōu)勢:
1)可以方便地存儲歷屆的學生檔案,管理更為安全、高效;
2)只需一到兩名管理員對學生檔案信息進行管理,節(jié)省大量人力、財力; 3)可以使用戶方便、快速地查詢及修改相關學生的檔案信息。
1.3 國內(nèi)外現(xiàn)狀及其存在的問題
在管理體制與計算機技術相對落后的管理環(huán)境下誕生的傳統(tǒng)信息管理軟件或者系統(tǒng),由于當時技術水平和管理水平的限制,目的主要是替代、減輕工作人員的勞動強度,提高錄入、保存信息的質(zhì)量,促進檔案信息管理工作的規(guī)范化,提高管理水平與工作效率等??墒钱斈觊_發(fā)的系統(tǒng)多數(shù)都是基于C/S模式的,只能夠在存檔方面操作性強,只是單方面的管理系統(tǒng)而已。
新管理時代的到來和計算機技術的高速發(fā)展,對系統(tǒng)各方面的要求都與日俱增,不論是安全還是技術,抑或是其他方面的要求都是越來越高?,F(xiàn)在的管理系統(tǒng)不僅是要求能夠替代、減輕工作人員的勞動強度,提高錄入速度、保存信息的質(zhì)量,這么簡單而已,還要求對信息的更新、對檔案的規(guī)范、對管理操作的流程等都要有技術上的提高,安全上的升級,更要求交互性的增強,比如遠程錄入、查詢等,在基于C/S模式的學生檔案管理系統(tǒng)中都不能簡單實現(xiàn)。
1.4 研究目標
實現(xiàn)一個基于WEB的學生檔案管理系統(tǒng),促進學生檔案管理工作的規(guī)范化,提高工作效率;降低學生檔案管理維護費用,提高行政工作效率,為學校領導決策提供支持,該系統(tǒng)的設計目標應盡量達到人力與設備的節(jié)省,并且提高處理數(shù)據(jù)的速度。并在系統(tǒng)開發(fā)過程中,提高自己對ASP.NET、SQL Server等前沿開發(fā)技術的理解、認識,進一步學習和加強自身在管理信息系統(tǒng)開發(fā)上的知識和實踐經(jīng)驗。
- 2 -
2011屆本科生畢業(yè)設計 系統(tǒng)開發(fā)技術綜述 2.1.NET技術綜述
.NET框架是微軟公司全新的開發(fā)工具,Web應用程序和傳統(tǒng)應用程序的開發(fā)者都能用它更高效、更靈活地開發(fā)應用程序。.NET框架是.NET平臺的基礎架構,其強大功能來自于公共語言運行環(huán)境和類庫緊密結合在一起,提供了不同系統(tǒng)之間交叉與綜合的解決方案和服務。.NET框架創(chuàng)造了一個完全可操控的、安全的和特性豐富的應用執(zhí)行環(huán)境,這不但使得應用程序的開發(fā)與發(fā)布更簡單,并且成就了眾多語言間的無縫集成。.NET框架由以下三個主要部分組成:
1)公共語言運行時(CLR:Common Language Runtime)公共語言運行時在組件的開發(fā)及運行過程中,扮演著非常重要的角色。在組件運行過程中,運行時負責管理內(nèi)存分配、啟動或刪除線程和進程、實施安全策略、同時滿足當前組件對其他組件的需求。.NET框架的關鍵作用在于它提供了一個跨編程語言的統(tǒng)一編程環(huán)境。
2)統(tǒng)一的編程類
.NET框架為開發(fā)人員提供了一個統(tǒng)一、面向?qū)ο蟆哟位?、可擴展的類庫集(API)?,F(xiàn)今,C開發(fā)人員使用的是Microsoft基類庫,Java開發(fā)人員使用的是Windows基類庫,而Visual Basic用戶使用的又是Visual Basic API集。而.NET框架統(tǒng)一了微軟當前的各種不同的框架。這樣,開發(fā)人員無需學習多種框架就能順利編程。而且,通過創(chuàng)建跨編程語言的公共API集,.NET框架可實現(xiàn)跨語言繼承、錯誤處理和調(diào)試。實際上,從Perl到C++的所有編程語言,都是相互等同的,開發(fā)人員可以自由選擇理想的編程語言。
3)活動服務器頁面(ASP.NET)ASP.NET在原有ASP上添加了許多新特性,并增強了原有的功能。ASP.NET并非僅是ASP的補充。它建立在公共語言運行庫上的編程框架,可用于在服務器上生成功能強大的web應用程序。與以前的Web開發(fā)模型相比,它具有多個重要的優(yōu)點:
a)增強的性能。ASP.NET是在服務器上運行的編譯好的公共語言運行庫代碼。與被解釋的不同,ASP.NET可利用早期綁定、實時編譯、本機優(yōu)化和緩存服務。這相當于在編寫代碼之前就顯著提供了性能。
b)簡易性。ASP.NET使執(zhí)行常見任務變得容易,從簡單的窗體提交和客戶端身份驗證到部署和站點配置。另外,公共語言運行庫利用托管代碼服務(如自動引用計數(shù)和垃圾回收)簡化了開發(fā)。
c)可管理性。ASP.NET采用基于文本的分層配置系統(tǒng),簡化了將設置應用于服務器環(huán)境和Web應用程序。由于配置信息是以純文本形式存儲的,因此可以在沒有本地管理工具幫助的情況下應用新設置。
d)安全性。借助內(nèi)置的Windows身份驗證和基于每個應用程序的配置,可以保證應用程序的安全。
- 3 -
2011屆本科生畢業(yè)設計
下面給出.NET的體系結構,如圖2-1所示。
圖2-1.NET的體系結構
2.2 2.2.1 ADO.NET ADO.NET概述
ADO.NET在改進以前ADO的基礎上,提供了很多用于以創(chuàng)建數(shù)據(jù)為中心的應用程序的特性。ADO.NET引入的新特性:對XML的充分支持、新數(shù)據(jù)對象的引入、語言無關的數(shù)據(jù)訪問、使用和CLR一致的類型。
1)互操作性
互操作性是ADO.NET提供的關鍵特性之一。由于ADO.NET使用XML交換數(shù)據(jù),因此任何支持XML的組件都可以從ADO.NET接收數(shù)據(jù)。這樣就可以在ADO.NET和運行任何平臺的應用程序之間傳輸數(shù)據(jù),以支持跨平臺應用。而ADO也可以通過使用COM封送處理在應用程序之間傳輸斷開連接的數(shù)據(jù)集,這就存在數(shù)據(jù)類型轉換的問題,同時COM組件也無法通過防火墻。而XML形式的Dataset組件卻可以直接通過防火墻。
2)可擴展性
使用ADO.NET創(chuàng)建的應用程序比ADO創(chuàng)建的應用程序更易于管理和縮放。ADO.NET創(chuàng)建的應用程序使用XML在層之間傳輸數(shù)據(jù),這樣就可以很輕松地在已經(jīng)部署的應用程序中增加層,并實現(xiàn)與新層中的對象無縫地交換數(shù)據(jù)。而ADO的使用數(shù)據(jù)集交換數(shù)據(jù),要在已有的應用程序結構中增加中間層,就必須改變應用程序,無法實現(xiàn)無縫數(shù)據(jù)共享。
3)不存在數(shù)據(jù)類型轉換
ADO.NET使用XML交換數(shù)據(jù),不存在數(shù)據(jù)類型轉換的需求,可以極大地提高應用程序的性能;而ADO使用COM組件傳送數(shù)據(jù),就需要進行類型轉換,這種類型轉換大大降低了應用程序的性能。
- 4 -
2011屆本科生畢業(yè)設計
2.2.2 ADO數(shù)據(jù)訪問接口
ADO.NET提供了對Microsoft SQL Server等數(shù)據(jù)源的一致訪問。數(shù)據(jù)庫使用者可以使用ADO.NET來連接到這些數(shù)據(jù)源,并檢索、操作和更新數(shù)據(jù)。
下面給出ADO.NET的關系圖,如圖2-2所示。
圖2-2 ADO.NET關系圖
ADO.NET提供了對Microsoft SQL Server等數(shù)據(jù)源的一致訪問。數(shù)據(jù)庫使用者可以使用ADO.NET來連接到這些數(shù)據(jù)源,并檢索、操作和更新數(shù)據(jù)。ADO.NET有兩個核心組件:DataSet和.NET數(shù)據(jù)提供程序,其中.NET數(shù)據(jù)提供程序包括:Connection、Command、DataReader和DataAdapter對象。DataSet設計目的是為了實現(xiàn)獨立于任何數(shù)據(jù)源的數(shù)據(jù)訪問,可以用于多種不同的數(shù)據(jù)源,可以用于XML數(shù)據(jù),或用于管理應用程序本地的數(shù)據(jù)。ADO.NET結構的另一個核心元素是.NET數(shù)據(jù)提供程序,設計目的是為了實現(xiàn)數(shù)據(jù)操作和對數(shù)據(jù)的快速、只讀訪問。Connection對象提供與數(shù)據(jù)源的連接。Command對象用于返回數(shù)據(jù)、修改數(shù)據(jù)、運行存儲過程以及發(fā)送或檢索參數(shù)信息的數(shù)據(jù)庫命令。
DataReader從數(shù)據(jù)源中提供高性能的數(shù)據(jù)流,DataAdapter提供連接DataSet對象和數(shù)據(jù)源的橋梁。DataAdapter使用Command對象在數(shù)據(jù)源中執(zhí)行SQL命令,以便將數(shù)據(jù)加載到DataSet中,并使對DataSet中數(shù)據(jù)的更改與數(shù)據(jù)源保持一致。
2.3 2.3.1 關于B/S架構 B/S架構簡介
目前,網(wǎng)絡應用軟件運行的模式主要有兩類:Client/Server 模式和 Browser/Web Server 模式??蛻?服務器(C/S)模式主要的缺點是維護、升級較麻煩,瀏覽器/服務器模式(B/S)是近幾年伴隨 Internet 迅速發(fā)展起來的一種技術,它與客戶/服務器方式類似,客戶端是一個標準的瀏覽器,服務器端是網(wǎng)站服務器(Web Server),而 Web Server與數(shù)據(jù)庫和應用服務器的緊密結合,使得這種模
- 5 -
2011屆本科生畢業(yè)設計
式的應用范圍不斷擴大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務系統(tǒng)、企業(yè)的 MIS系統(tǒng)紛紛采用這種模式。它的主要優(yōu)點是集中化管理和維護,便于擴充應用、升級維護簡便;而客戶端的免安裝和零維護的特點,極大地降低了日后的維護成本。利用 ASP.NET 技術是開發(fā) B/S 模式軟件最方便、最簡單的方法。企業(yè)使用的各個管理系統(tǒng)的功能將需要不斷的擴充和更新,數(shù)據(jù)庫的數(shù)據(jù)表及其結構也隨之需要進行更新,軟件也必將不斷地更新;同時軟件產(chǎn)品本身就要經(jīng)過一個不斷自我完善的過程。基于上述考慮,用 Browser/Web模式來設計管理系統(tǒng)比較合適,服務器端采用 SQL Server 數(shù)據(jù)庫系統(tǒng)和 ASP.NET 組件來構成管理系統(tǒng)的應用服務系統(tǒng);客戶端采用瀏覽器來完成管理的各項記錄和查詢的操作,同時可進行遠程系統(tǒng)維護和管理。
2.3.2 B/S體系的三層結構
B/S結構是真正的三層結構,它以訪問 WEB 數(shù)據(jù)庫為中心,HTTP 為傳輸協(xié)議,客戶端通過瀏覽器(Browser)訪問 WEB 服務器和與其相連的后臺數(shù)據(jù)庫,我們稱之為 B/S(Browser/Server)模式,其三層結構組成如圖2-3所示。
客戶端WEB服務器客戶端圖2-3 B/S三層結構圖
后臺數(shù)據(jù)庫 從左到右,分為三個層次:
第一層是客戶端即瀏覽器,主要完成客戶和后臺的交互及最終查詢結果的輸出功能。在客戶端向指定的 Web 服務器提出服務器請求,Web 服務器用 HTTP 協(xié)議把所需文件資料傳給用戶,客戶端接受并顯示在 www.tmdps.cnputerLevel FirstLanguage SecondLanguage
varchar(20)varchar(50)varchar(20)varchar(50)char(10)varchar(50)varchar(20)varchar(20)varchar(20)tinyint varchar(50)varchar(50)varchar(20)varchar(20)varchar(20)varchar(50)varchar(50)varchar varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)varchar(50)
√ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √
家庭出身 戶籍所在地 籍貫 家庭住址 郵編 健康狀況 身高 視力 體重 婚姻情況 就讀院校 學歷 學制 宿舍號 班主任 職務 生源所在地 培養(yǎng)類別 入學時間 畢業(yè)時間 畢業(yè)證書編號 入團情況 入團介紹人 入黨情況 入黨介紹人 第二學歷 計算機水平第一外語 第二外語
4.3 E-R圖
E-R圖是描述概念數(shù)據(jù)模型的主要工具,E-R圖也稱為實體-聯(lián)系模型,由實體,屬性,聯(lián)系三個要素構成。根據(jù)系統(tǒng)功能分析后,設計出滿足各實體間相互關系的內(nèi)容就可以用E-R圖表達出來,部分實體E-R圖如圖4-3所示。
- 14 -
2011屆本科生畢業(yè)設計
年級號年級名學院號學院名稱年級1包含n學院1包含1專業(yè)n包含個人照片n專業(yè)名稱專業(yè)號專業(yè)簡介社會關系成績信息家庭關系班級1包含n學生信息性別班級號班級名稱班級簡介學生號姓名政治面貌出生日期民族健康狀況籍貫 圖4-3 系統(tǒng)E-R圖
4.4 4.4.1 數(shù)據(jù)庫詳細實現(xiàn) 存儲過程
存儲過程只在創(chuàng)建時進行編譯,以后每次執(zhí)行存儲過程都不需再重新編譯;使用存儲過程一方面減少了瀏覽器與服務器間的交互,減少了網(wǎng)絡傳輸,另一方面又省去了DBMS對SQL語句的語法檢查、查詢優(yōu)化和編譯等過程,從而可以明顯改善系統(tǒng)的性能。我們在設計系統(tǒng)時,對于復雜的查詢、匯總統(tǒng)計等功能采用存儲過程實現(xiàn),而不是由Web服務器或客戶機來執(zhí)行SQL操作。這樣,既降低了Web服務器或客戶機的負擔,又提高了模塊的獨立性,優(yōu)化了系統(tǒng)的性能。
1)統(tǒng)計學生人數(shù)存儲過程
該存儲過程的作用是根據(jù)輸入的年級,統(tǒng)計出總人數(shù),代碼如下: create proc FileCount(@StuYear varchar(10))as select StuYear as 年級,StuCollege as 學院,專業(yè)數(shù)=count(distinct StuProfession),班級數(shù)=count(distinct StuClass),人數(shù)=count(*)from FileView where StuYear=@StuYear group by StuYear,StuCollege order by StuYear 2)統(tǒng)計年齡分段人數(shù)存儲過程
該存儲過程的作用是統(tǒng)計出各年齡段的人數(shù),代碼如下: Create proc AgeCount
- 15 -
2011屆本科生畢業(yè)設計
As begin select sum(case when cast(datediff(yy,birth,getdate())as nvarchar)<18 then 1 else 0 end)as '18歲以下',sum(case when cast(datediff(yy,birth,getdate())as nvarchar)between 19 and 21 then 1 else 0 end)as '19--21歲',sum(case when cast(datediff(yy,birth,getdate())as nvarchar)between 22 and 24 then 1 else 0 end)as '22--24歲',sum(case when cast(datediff(yy,birth,getdate())as nvarchar)between 25 and 27 then 1 else 0 end)as '25--27歲',sum(case when cast(datediff(yy,birth,getdate())as nvarchar)>28 then 1 else 0 end)as '28歲以上' from StuFile end 4.4.2 觸發(fā)器
觸發(fā)器(trigger)是個特殊的存儲過程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動,而是由事件來觸發(fā),比如當對一個表進行操作(insert,delete,update)時就會激活它執(zhí)行。
1)登陸日志觸發(fā)器
該觸發(fā)器的功能是當用戶登陸系統(tǒng)時,自動往日志表里添加登陸名、登陸時間和登陸IP地址,詳細代碼如下:
create trigger login_tri on dbo.UserInfo for update as insert into LoginLog(userid,logindate,loginip)select U_ID,U_lastdate,U_lastIP from inserted 2)禁止修改登陸日志觸發(fā)器
該觸發(fā)器的功能是禁止用戶修改日志表,詳細代碼如下: create trigger tri1 on dbo.LoginLog for update as
raiserror('不能修改日志',16,10)
rollback transaction 3)自動添加學生賬號觸發(fā)器
該觸發(fā)器的功能是當添加學生檔案時,自動添加該學生的系統(tǒng)賬號,其中登陸賬號為學號,登陸密碼為學生的身份證號,詳細代碼如下:
- 16 -
2011屆本科生畢業(yè)設計
create trigger insert_user on StuFile for insert as begin declare @userID varchar(20),@userPass varchar(20),@userName varchar(20)select @userID = inserted.StuNo ,@userPass = inserted.IdentityID,@userName=inserted.StuName from inserted insert into UserInfo(U_ID,U_pass,U_name,U_power)values(@userID,@userPass,@userName,'學生')end 4)級聯(lián)刪除賬號觸發(fā)器
該觸發(fā)器的功能是當刪除某一學生的檔案信息時,自動刪除該學生的登陸賬號,詳細代碼如下: create trigger delete_user on dbo.StuFile for delete as begin delete UserInfo from UserInfo,deleted where UserInfo.U_ID=deleted.StuNo end
- 17 -
2011屆本科生畢業(yè)設計 系統(tǒng)設計 5.1 系統(tǒng)體系結構
學生檔案管理系統(tǒng)采用的是三層體系結構,就是將系統(tǒng)的總體結構分為三層:表示層、業(yè)務邏輯層和數(shù)據(jù)層,將此三層相分離。因此可以對系統(tǒng)進行并行的開發(fā)和維護,提高開發(fā)和維護的效率,也降低了開發(fā)和維護的成本。
學生檔案管理系統(tǒng)的體系結構如圖5-1所示。
圖5-1 學生檔案管理系統(tǒng)體系結構圖
5.2 系統(tǒng)模塊劃分
本系統(tǒng)為一個基于WEB平臺下的學生檔案管理系統(tǒng),主要有用戶管理模塊、權限管理模塊、年級管理模塊、學院管理模塊、專業(yè)管理模塊、班級管理模塊、學生檔案管理模塊、系統(tǒng)管理模塊等幾部分功能,其基本功能模塊圖5-2所示。
學生檔案管理系統(tǒng)用戶管理權 限 管 理年 級 管 理學 院 管 理專業(yè)管理班 級 管 理學 生 檔 案 管 理系 統(tǒng) 管 理添加用戶編輯用戶刪除用戶編輯權限添加年級編輯年級刪除年級添加學院編輯學院刪除學院添加專業(yè)編輯專業(yè)刪除專業(yè)添加班級編輯班級刪除班級添加學生信息編輯學生信息刪除學生信息導入學生信息導出學生信息學生人數(shù)統(tǒng)計數(shù)據(jù)庫備份數(shù)據(jù)庫還原 圖5-2 系統(tǒng)基本模塊圖
本系統(tǒng)根據(jù)學校管理需要,共分為三種級別的用戶,分別為:學生用戶、教師用戶和管理員用戶。不同用戶對應著不同的操作權限,其具體操作權限如下述。
1)學生用戶:供在校學生使用。學生用戶登錄后,可以查看有關學生本人的信息,其訪問操作包括修改密碼、一些簡單的查詢等。具體操作權限如下: a)學生本人的檔案信息查看
- 18 -
2011屆本科生畢業(yè)設計
b)學生本人檔案導出 c)學校相關信息的查看
2)教師用戶:供本校教師使用。其操作權限如下:
a)修改個人密碼
b)查詢和查看學生檔案信息 c)學生檔案信息的導出 d)查看學生的統(tǒng)計信息
3)管理員用戶:管理員用戶具有該系統(tǒng)的所有權限,包括數(shù)據(jù)庫的備份、還原等,具體權限如下:
a)用戶的添加、刪除、修改、查詢和導出 b)用戶的權限設置
c)年級信息的添加、刪除、修改 d)學院信息的添加、刪除、修改 e)專業(yè)信息的添加、刪除、修改 f)班級信息的添加、刪除、修改
g)學生檔案信息的的添加、刪除、修改、查詢、導入、導出 h)數(shù)據(jù)庫的遠程備份、還原
5.3 主要功能模塊簡介
1)登陸驗證模塊
用戶身份驗證是實現(xiàn)系統(tǒng)安全性和保證系統(tǒng)穩(wěn)定性的有效措施之一,用戶身份驗證可以防止非授權用戶使用與入侵,同時也可以維護合法用戶的權益,本系統(tǒng)采用用戶登錄方式限制對系統(tǒng)資源隨意訪問。在該模塊中,學生的賬號是由觸發(fā)器自動添加的,對于其他用戶,則必須由管理員添加用戶信息后方可使用本系統(tǒng)。2)用戶管理模塊
用戶管理模塊主要是實現(xiàn)對用戶的添加、刪除、修改和查詢,同時還可以根據(jù)需要導出相關用戶的信息,如賬號、密碼等。3)權限管理模塊
權限管理模塊主要是實現(xiàn)對不同類別用戶的權限設置,可對不同類別的用戶賦予不同的權限,如學生類別的初始權限就只有修改密碼、查看個人信息和導出個人信息,管理員可對其權限進行更改。
4)年級管理模塊
年級管理模塊主要是實現(xiàn)對年級信息的添加、刪除和修改。5)學院管理模塊
學院管理模塊主要是實現(xiàn)對學院信息的添加、刪除和修改。
- 19 -
2011屆本科生畢業(yè)設計
6)專業(yè)管理模塊
專業(yè)管理模塊主要是實現(xiàn)對專業(yè)信息的添加、刪除、修改和查詢,在添加專業(yè)信息時必須選擇學院,否則無法添加。7)班級管理模塊
班級管理模塊主要是實現(xiàn)對班級信息的添加、刪除、修改和查詢,在添加班級信息時必須選擇年級、學院和專業(yè),否則無法添加,并且不能添加相同名字的班級。8)學生檔案管理模塊
學生檔案管理模塊主要是實現(xiàn)對學生檔案信息的錄入、刪除、修改、查詢和EXCEL表格的導入,Word文檔的導出等功能,該模塊是本系統(tǒng)的核心模塊,包含了豐富的學生個人信息,同時在此模塊中還實現(xiàn)了復雜查詢和模糊查詢,可對學生信息進行不同條件的組合查詢,并可對查詢結果自定義格式查看和導出。此外,該模塊還包含學生人數(shù)的統(tǒng)計,目前為止已實現(xiàn)的統(tǒng)計有:統(tǒng)計每個年級的人數(shù)分布、性別人數(shù)統(tǒng)計、政治面貌人數(shù)統(tǒng)計、年齡分段人數(shù)統(tǒng)計。9)系統(tǒng)管理模塊
系統(tǒng)管理模塊主要是實現(xiàn)對系統(tǒng)數(shù)據(jù)庫的遠程備份和還原,通過此模塊可遠程備份數(shù)據(jù)庫,備份后還可將備份文件下載到本地,同時下載后可選擇是否刪除。還原功能則分為普通還原和強制還原,強制還原是強制關閉該數(shù)據(jù)庫的進程,把數(shù)據(jù)庫恢復到備份前狀態(tài)。
- 20 -
2011屆本科生畢業(yè)設計 系統(tǒng)詳細設計與實現(xiàn) 6.1 登陸界面
系統(tǒng)的登陸界面在系統(tǒng)設計中起著舉足輕重的作用,一個設計良好的登陸界面可防止未授權用戶非法使用系統(tǒng),避免個人信息的泄露等。在本系統(tǒng)的登陸界面中,實現(xiàn)了驗證碼技術,以防止用戶信息被暴力破解,用戶在輸入正確的登陸信息后方可使用本系統(tǒng),在登陸成功后,會自動往登陸日志表中添加本次登陸用戶的用戶名、登陸時間、登陸IP,以備管理員查詢,而其它界面則采用了Sesssion參數(shù)來判斷用戶是否登陸,登陸界面如圖6-1所示。
圖6-1 登陸界面
登陸驗證的關鍵代碼請見附錄。
6.2 系統(tǒng)首頁
系統(tǒng)首頁主要顯示當前登陸用戶的登陸信息,如登陸用戶的登陸時間、登陸IP地址、累計登陸次數(shù)等信息,實現(xiàn)界面如圖6-2所示。
圖6-2 系統(tǒng)首頁
- 21 -
2011屆本科生畢業(yè)設計
6.3 用戶管理
用戶管理功能主要包括修改密碼、添加用戶、查詢用戶信息、導出用戶信息等,實現(xiàn)界面如圖6-3到圖6-6所示。
圖6-3 修改密碼界面
圖6-4添加用戶界面
圖6-5 用戶管理界面
圖6-6 權限管理界面
用戶管理的關鍵代碼請見附錄。
6.4 類別管理
類別管理主要包括年級管理、學院管理、專業(yè)管理、班級管理等,在這些界面的實現(xiàn)中,使用了.NET 2.0新增的服務器控件—GridView。GridView是DataGrid的后繼控件,GridView和DataGrid功能相似,都是在Web頁面中顯示數(shù)據(jù)源中的數(shù)據(jù),將數(shù)據(jù)源中的一行數(shù)據(jù),也就是一條記錄,顯示為在Web頁面上輸出表格中的一行。但GridViewd在功能上更加豐富,因為其提供了智能標記面板,更加易用、方便,常用的排序、分頁、更新、刪除等操作更是可以零代碼實現(xiàn)。并且GridView還具有PagerTemplate屬性,可以自定義用戶導航頁面,也就是說對分頁的控制更加隨心所欲,節(jié)省了項目開發(fā)的大量時間。
6.4.1 年級管理
年級管理包括年級信息的添加和管理,實現(xiàn)界面如圖6-7和圖6-8所示。
- 22 -
2011屆本科生畢業(yè)設計
圖6-7年級添加界面
圖6-8 年級管理界面
6.4.2 學院管理
學院管理包括學院信息的添加和管理,實現(xiàn)界面如圖6-9和圖6-10所示。
圖6-9 學院添加界面
圖6-10 學院管理界面
6.4.3 專業(yè)管理
專業(yè)管理包括專業(yè)信息的添加、管理和查詢,實現(xiàn)界面如圖6-11和圖6-12所示。
圖6-11 專業(yè)添加界面
圖6-12 專業(yè)管理界面
6.4.4 班級管理
班級管理包括班級信息的添加、查詢和管理,實現(xiàn)界面如圖6-13和圖6-14所示。
- 23 -
2011屆本科生畢業(yè)設計
圖6-13 班級添加界面
圖6-14 班級管理界面
班級管理的關鍵代碼請見附錄。
6.5 6.5.1 學生檔案管理 學生檔案信息錄入
學生檔案包含了豐富的學生個人信息,為方便瀏覽和錄入信息,該界面使用了網(wǎng)頁選項卡技術,把學生的信息分為基本資料
一、基本資料
二、測評信息、閱歷及關系、其它情況、學籍變動、備注等七大類。因?qū)W生檔案信息的嚴謹性,在此界面的設計中,大量使用了正則表達式來限制用戶的輸入,以防止錯誤信息的錄入,如身份證號只允許輸入15位或18位數(shù)字、日期必須是正確的時間格式、聯(lián)系電話只能輸入7位或11位數(shù)字等。同時因本系統(tǒng)包含大量的學生信息,為防止照片上傳時因文件名相同而被覆蓋,所以在此處實現(xiàn)了照片文件上傳自動命名的功能。實現(xiàn)界面如圖6-15所示。
圖6-15 學生信息錄入界面
6.5.2 學生檔案信息管理
此頁面主要負責對學生檔案信息的管理,可使用多達10個查詢條件組合起來進行學生查詢,并可對查詢結果自定義格式查看,選擇自己需要顯示的信息,通過導出功能還可把查詢結果導出為word文檔。
- 24 -
2011屆本科生畢業(yè)設計
實現(xiàn)界面如圖6-16所示。
圖6-16 學生檔案信息管理界面
6.5.3 學生檔案信息導入
通過此界面可把EXCEL表格里面的學生數(shù)據(jù)導入到數(shù)據(jù)庫里,實現(xiàn)界面如圖6-17所示。
圖6-17 學生檔案信息導入界面
學生檔案信息導入關鍵代碼請見代碼。
6.5.4 學生信息統(tǒng)計
本界面主要是實現(xiàn)對學生人數(shù)、類別的統(tǒng)計,因時間關系,只實現(xiàn)了年級人數(shù)統(tǒng)計、性別人數(shù)統(tǒng)計、政治面貌分布人數(shù)統(tǒng)計和年齡分段人數(shù)統(tǒng)計,其中類別人數(shù)統(tǒng)計功能中使用了第三方服務器控件DotNetCharting,DotNetCharting是一個.NET圖表控件,對中文的支持非常好,而且操作方便,開發(fā)快速,實現(xiàn)效果如圖6-18和圖6-19所示。
- 25 -
2011屆本科生畢業(yè)設計
圖6-18 年級人數(shù)統(tǒng)計界面
圖6-19 類別人數(shù)統(tǒng)計界面
學生人數(shù)統(tǒng)計關鍵代碼請見附錄。
6.6 系統(tǒng)管理
數(shù)據(jù)庫作為信息系統(tǒng)的核心,在系統(tǒng)的運行中擔當著重要的角色,盡管數(shù)據(jù)庫系統(tǒng)中采取了各種保護措施來防止數(shù)據(jù)庫的安全性和完整性被破壞,保證并發(fā)事務的正確執(zhí)行,但是計算機系統(tǒng)中硬件的故障、軟件的錯誤、操作員的失誤以及惡意的破壞仍是不可避免的,這些故障輕則造成運行事務非正常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中全部或部分數(shù)據(jù)丟失。因此在系統(tǒng)實現(xiàn)中,數(shù)據(jù)庫的備份和恢復功能顯得尤為重要,系統(tǒng)管理模塊正是實現(xiàn)了這兩個功能,詳細內(nèi)容如下所示。
6.6.1 數(shù)據(jù)庫備份
數(shù)據(jù)庫備份界面主要實現(xiàn)了數(shù)據(jù)庫備份功能,當備份成功后可選擇是否把備份文件下載到本機,下載后可刪除服務器上的備份文件。實現(xiàn)界面如圖6-20所示。
- 26 -
2011屆本科生畢業(yè)設計
圖6-20 數(shù)據(jù)庫備份
數(shù)據(jù)庫備份關鍵代碼請見附錄。
6.6.2 數(shù)據(jù)庫還原
數(shù)據(jù)庫還原界面主要實現(xiàn)了數(shù)據(jù)庫還原功能,備份文件可輸入服務器上的備份文件名或選擇本機上的備份文件,還原方式分普通還原和強制還原兩種,當選擇強制還原時,會強制中斷連接進程,還原數(shù)據(jù)庫。實現(xiàn)界面如圖6-21所示。
圖6-21 數(shù)據(jù)庫還原界面
數(shù)據(jù)庫還原關鍵代碼請見附錄。
6.6.3 系統(tǒng)空間占用信息
通過此界面可查看本系統(tǒng)的空間占用信息,實現(xiàn)界面如圖6-22所示。
- 27 -
2011屆本科生畢業(yè)設計
圖6-22 系統(tǒng)空間占用界面 系統(tǒng)測試
7.1 測試目標
系統(tǒng)測試是系統(tǒng)開發(fā)周期中一個十分重要而漫長的階段。其重要性體現(xiàn)在它是保證系統(tǒng)質(zhì)量與可靠性的最后關口,是對整個系統(tǒng)開發(fā)過程包括系統(tǒng)分析,系統(tǒng)設計和系統(tǒng)實現(xiàn)的最終審查。系統(tǒng)測試的對象不僅僅是源程序,而應是整個系統(tǒng),它把需求分析,概要設計,詳細設計以及程序設計各階段的開發(fā)文檔,包括需求規(guī)格說明,概要設計說明,詳細設計說明以及源程序,都作為測試的對象。測試的目的就是發(fā)現(xiàn)系統(tǒng)的錯誤。
7.2 7.2.1 模塊測試 登陸測試
打開系統(tǒng)登錄頁面login.aspx,出現(xiàn)界面如圖6-1。輸入正確的用戶名、密碼和驗證碼,并選擇相應的用戶類別后文方可登錄成功,跳轉到系統(tǒng)首頁,這樣就達到了預期的登陸效果。該模塊的測試結果如表7-1所示。
表7-1 登陸模塊測試結果
測試操作
不輸入任何信息 輸入正確的用戶信息
輸入錯誤驗證碼,其他正確 使用學生賬號登陸,選擇身份“管理員”,其它信息正確 輸入正確用戶錯誤密碼,其它信息正確
測試取值 無
admin、admin admin、admin 200711622123、123456
admin、1234
系統(tǒng)響應 顯示錯誤提示信息 進入系統(tǒng)首頁 顯示錯誤提示信息 彈出錯誤提示框 彈出錯誤提示框
錯誤或提示
“請輸入賬號”,“請輸入密碼” 無
“驗證碼錯誤!”
“登陸信息錯誤,請確認!” “登陸信息錯誤,請確認!”
- 28 -
2011屆本科生畢業(yè)設計
7.2.2 用戶管理測試
登陸成功后,點擊左側導航的修改密碼,進入密碼修改界面。輸入正確的舊密碼和連續(xù)兩次輸入新密碼后,即可更改當前登陸用戶的登陸密碼。該頁面的測試結果如表7-2所示。用戶管理界面的其它功能和學生檔案管理類似,經(jīng)測試運行正常,這里不再介紹,詳細內(nèi)容請見學生檔案管理測試。
表7-2 密碼修改界面測試結果
測試操作
不輸入任何信息 輸入錯誤的舊密碼 舊密碼為空,其它正確
舊密碼正確,新密碼和確認密碼不一致 輸入正確信息
測試取值 無
admin11
admin、admin admin、33、44
admin、1234、1234
系統(tǒng)響應 顯示錯誤提示信息 顯示錯誤提示信息 彈出錯誤提示框 顯示錯誤提示信息 跳轉到操作成功頁面
錯誤或提示 “密碼不能為空” “密碼錯誤” “請輸入舊密碼” “密碼不一致” 無
7.2.3 班級管理測試
登陸成功后,點擊左側導航的班級管理,出現(xiàn)界面如圖6-14。點擊“添加班級”,進入班級添加界面,如圖6-13所示。選擇該班級所在年級、學院、專業(yè)后,輸入班級名稱和備注說明,若已存在同名班級,則顯示錯誤提示信息。添加成功后跳轉到操作成功提示頁面,如圖7-1所示,顯示該頁面兩秒后則會自動跳轉到班級管理頁面,如圖6-13所示。在該頁面可對班級信息進行查詢、編輯和刪除,點擊“刪除”將刪除該班級的信息,點擊“取消”取消刪除,點擊“確定”,成功刪除數(shù)據(jù)庫中的該條記錄。如圖7-2所示。
圖7-1
圖7-2
年級管理、學院管理、專業(yè)管理等模塊與班級管理模塊類似,經(jīng)測試運行正常,這里不再進行敘述。
7.2.4 學生檔案管理測試
登陸成功后,點擊左側導航的錄入學生信息,出現(xiàn)界面如圖6-15,在該界面按照要求正確填入學生信息后,點擊右側確定按鈕,若存在相同學號的學生信息,則彈出提示框,如圖7-3所示,若添加成功,則跳轉到操作成功頁面,并且兩秒后會自動跳轉回學生檔案管理頁面如圖6-16。在該界面可對學生檔案信息進行管理,輸入查詢條件后,下方的GridView顯示出正確的查詢結果。點擊“自
- 29 -
2011屆本科生畢業(yè)設計
定義格式查看”,可選擇需要顯示的信息。點擊“導出”,則會把當前GridView內(nèi)顯示的信息導出到Word文檔中,并彈出文件下載對話框,如圖7-4所示。
圖7-3 提示框
圖7-4 下載對話框
7.2.5 系統(tǒng)管理測試
登陸成功后,點擊左側導航的數(shù)據(jù)庫備份,進入數(shù)據(jù)庫備份界面,如圖6-20所示。輸入存放備份文件的目錄名和備份文件名,若不輸入則默認為“DataBackup”和“當前日期_bak”,點擊開始備份,備份成功后會顯示如圖7-5所示界面。點擊下載備份文件,則會彈出下載對話框,如圖7-6所示。點擊刪除備份文件,會彈出刪除成功的提示框,如圖7-7所示。
圖7-5 數(shù)據(jù)庫備份界面
圖7-6 下載對話框
圖7-7 提示框
點擊左側導航的數(shù)據(jù)庫還原,進入數(shù)據(jù)庫還原界面,如圖6-21所示。按要求輸入備份文件目錄和文件名或選擇本地備份文件,點擊開始還原,還原成功后彈出提示框,如圖7-8所示。若同時輸
- 30 -
2011屆本科生畢業(yè)設計
入文件名和選擇本地備份文件,則會彈出提示框,如圖7-9所示。
圖7-8
圖7-9
再對本系統(tǒng)其它功能模塊進行詳細測試,系統(tǒng)的各個能功模塊界面、功能均運行正常,程序處理正確,達到了理想的效果??偨Y
經(jīng)過了一個多月的學習和努力,我完成了基于WEB的學生檔案管理系統(tǒng)的畢業(yè)設計。系統(tǒng)的詳細設計根據(jù)系統(tǒng)分析階段的結論將系統(tǒng)具體化,并完成了各個模塊的功能,直到最后形成了一個完整的可行性高的學生檔案管理系統(tǒng)。
本系統(tǒng)使用C#.NET作為開發(fā)語言,在開發(fā)的過程中采用Microsoft Visual Studio 2008作為開發(fā)工具,并選用了Microsoft SQL Server 2005 數(shù)據(jù)庫系統(tǒng)以實現(xiàn)數(shù)據(jù)的存儲,同時還使用了第三方服務器控件,如DotNetCharting。頁面的設計則使用了Adobe Dreamweaver CS5 進行設計,同時使用了Adobe Photoshop CS5、光影魔術手等圖像處理工具進行圖像的處理和美化,最后設計出一個較為美觀和人性化的系統(tǒng)。由于時間的限制和本人編程技術的不足,此系統(tǒng)的功能還有待于進一步的加強和完善。例如權限管理功能,原來的設想是把權限細分到每個用戶上的,但因時間和技術關系,只能細分到用戶類別。
通過此次畢業(yè)設計,讓我知道了系統(tǒng)開發(fā)的艱辛與快樂,在設計的過程中,有時為了一個看起來很簡單的功能,也要占用大量時間,有時還未必能徹底解決問題。所以在編寫程序的過程中一定要有耐心和細心,否則一時的粗心也可能引發(fā)一大堆的錯誤。同時本次設計也讓我知道了自己知識、能力、經(jīng)驗的缺乏,還有許多知識需要去了解和學習,從而提高自己的個人能力。ASP.NET的學習中是從無到有,從生疏到熟悉,讓人回味無窮的一個過程,不但可以解決自己的問題,還可以幫助同學解決他們的難題,是一個很好的學習過程。
總的來說,本學生檔案管理系統(tǒng)基本上可以滿足學生檔案管理的需要。在以后的日子里,本系統(tǒng)將會得到進一步的提高和完善。
- 31 -
鳴
謝
鳴 謝
首先感謝肖洪生老師給予了精心的指導和熱情的幫助,然后就是感謝我的同學們的大力幫助!其次感謝家人對我在設計期間的關愛和照顧。在課題設計的構思 階段和系統(tǒng)的設計階段,導師提出許多寶貴的設計意見,在最后的論文修改階段,老師在百忙之中抽出時間幫我指出和解決存在的問題,提供了很多的幫助,最后才得以順利的完成論文的寫作。在短暫的幾個月的相處時間里,老師淵博的知識、敏銳的思路和實事求是的工作作風給我留下了深刻的印象,這將使得我終身受益,在此謹向老師表示衷心的感謝和崇高的敬意。同時也感謝07信管的同學們在這次畢業(yè)設計中對我的支持和幫助。另外,我要衷心感謝信息學院全體老師對我的教誨,他們不僅使我的知識、能力得到提高,更重要的是教會了我怎樣提高自己的自學能力,怎樣去適應社會,適應工作。還有網(wǎng)上眾多不知名的專家和朋友,我要對他們說聲謝謝,他們在網(wǎng)絡上的文章幫我解決了許多困難,感謝所有幫助我的老師、朋友及家人。
- 32 -
參考文獻
參考文獻
[1]王輝,黃紅超.ASP.NET實用教程[M].北京:清華大學出版社,2005.12.[2]求是科技.ASP.NET信息管理系統(tǒng)開發(fā)實例導航[M].北京:人民郵電出版社,2005.4.[3]金明花,李冉,鄒婷.Flash 8從入門到精通[M].北京:中國青年出版社,2006.5.[4]Richard Leinecker.ASP.NET 實用全書[M].北京:電子工業(yè)出版社,2003.1.[5]張海藩.軟件工程導論[M].北京:清華大學出版社,2008.2.[6]王珊方,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社,2008.4.[7]趙致格.數(shù)據(jù)庫系統(tǒng)與應用(SQL Server)[M].北京:清華大學出版社,2005.9.[8]王志偉,宋曉鵬.突破ASP.NET 編程實例五十講[M].北京:中國水利水電出版社,2002.5.[9] 楊天奇,王文,何朋,李會鋒.ASP.NET網(wǎng)絡編程技術[M].北京:機械工業(yè)出版社,2007.[10]微軟公司.Microsoft ASP.NET標準教程[M].北京: 中國勞動社會保障出版社,2003.5.[11]孫良軍.Flash 8入門與實例演練[M].北京:中國青年出版社,2006.3.[12]Louis Davidson.Professional SQL Server 2000 Database Design[M],o'reilly ,2003.- 33 -
附
錄
附 錄
(一)登陸驗證的關鍵代碼。String code = CodeTest.Code;
if(!this.tb_code.Text.Trim().Equals(code))
{Label1.Text = “驗證碼錯誤!”;}
else
{
String id = tb_id.Text.ToString();
String pass = tb_pass.Text.ToString();
string power = dd_power.SelectedValue.ToString();
StringBuilder sqlstr = new StringBuilder();
sqlstr.Append(“select * from UserInfo”);
sqlstr.Append(“ where U_ID=@id and U_pass=@pass and U_power=@power”);
SqlParameter[] parameters = { new SqlParameter(“@id”, SqlDbType.NVarChar, 20), new SqlParameter(“@pass”, SqlDbType.NVarChar, 20), new SqlParameter(“@power”, SqlDbType.NVarChar, 20)};
parameters[0].Value = id;
parameters[1].Value = pass;
parameters[2].Value = power;
DataSet ds = Query(sqlstr.ToString(), parameters);
DataTable dt = new DataTable();
dt = ds.Tables[0];
if(ds.Tables[0].Rows.Count!= 0)
{
String logindate = DateTime.Now.ToString(“yyyy-MM-dd HH:mm:ss”);
String loginip = Request.UserHostAddress;
Session[“id”] = dt.Rows[0][“U_ID”].ToString();
Session[“name”] = dt.Rows[0][“U_name”].ToString();
Session[“pass”] = dt.Rows[0][“U_pass”].ToString();
Session[“power”] = dt.Rows[0][“U_power”].ToString();
Session[“l(fā)astdate”] = dt.Rows[0][“U_lastdate”].ToString();
Session[“l(fā)oads”] = Convert.ToInt16(dt.Rows[0][“U_loads”].ToString())+1;
Session[“l(fā)astip”] = dt.Rows[0][“U_lastIP”].ToString();
Session[“l(fā)ogindate”] = logindate;
Session[“l(fā)oginip”] = loginip;
string strsql = @“update UserInfo set U_lastdate='” + logindate + “',U_lastIP='” +loginip+“', U_loads=U_loads+1 where U_ID='” + id + “'”;
using(SqlConnection conn = new SqlConnection(connStr))
{
using(SqlCommand comm = new SqlCommand(strsql, conn))
{
conn.Open();
int row = comm.ExecuteNonQuery();
- 34 -
附
錄
}
if(power == “管理員” | power == “教師”)
Response.Redirect(“Main.aspx”);
else if(power==“學生”)
Response.Redirect(“user/Main.aspx”);
}
}
else
{ShowMessageBox(“登陸信息錯誤,請確認!”);}
}(二)用戶管理關鍵代碼
protected void Button1_Click(object sender, EventArgs e)
{
string q1 = DropDownList2.SelectedValue.ToString();
//用戶類別
string q2 = DropDownList3.SelectedValue.ToString();
//查詢方式
string qtext = TextBox4.Text.ToString().Trim();
string sqlstr = “select * from UserInfo where”;
if(q1 == “請選擇...” & q2 == “請選擇...” & qtext == “")
{
sqlstr = ”select * from UserInfo “ + ”order by U_Power,ID“;
SqlDataSource1.SelectCommand = sqlstr;
}
else
{
if(q1!=”請選擇...“)
sqlstr = sqlstr + ” U_power='“ + q1 + ”' and “;
if(q2 == ”賬號“ & qtext!= ”“)
sqlstr = sqlstr + ”U_ID like '%“ + qtext + ”%' and “;
if(q2==”姓名“& qtext!=”“)
sqlstr = sqlstr + ”U_name like '%“ + qtext + ”%' and “;
if(q2==”請選擇...“& qtext!=”“)
sqlstr = sqlstr + ”U_name like '%“ + qtext + ”%' or U_ID like '%“ + qtext + ”%' and “;
sqlstr = sqlstr + ”1=1“;
SqlDataSource1.SelectCommand = sqlstr;
}
if(GridView1.Rows.Count!= 0)
{
Session[”SqlDataSouce1Command“] = SqlDataSource1.SelectCommand;
}
}(三)班級管理關鍵代碼
protected void Button1_Click(object sender, EventArgs e)
{
if(tb_class.Text == ”“)
- 35 -
附
錄
{
ShowMessageBox(”請輸入班級名稱“);
}
else if(CustomValidator1.IsValid)
{
string stu_year = DropDownList1.SelectedValue.ToString();
string stu_col = DropDownList2.SelectedValue.ToString();
string stu_pro = DropDownList3.SelectedValue.ToString();
string stu_class = tb_class.Text;
string stu_note = tb_note.Text;
string strsql = ”insert into StuClass(StuClass, Year_ID, College_ID, Profession_ID,Note)values('“ + stu_class + ”',“ + stu_year + ”,“ + stu_col + ”,“ + stu_pro + ”,'“ + stu_note + ”')“;
using(SqlConnection conn = new SqlConnection(connStr))
{
using(SqlCommand comm = new SqlCommand(strsql, conn)){
conn.Open();
int row = comm.ExecuteNonQuery();}
Response.Redirect(”success.aspx?success=5&url=StuClassManage.aspx“);//跳轉到匯總頁面
}} }(四)學生檔案信息導入關鍵代碼 Random number = new Random();
string filename = DateTime.Now.ToString(”yyyyMMddhhmmssfff“)+ ”_“ + number.Next(10000, 99999).ToString()+
”_“
+
FileUpload1.PostedFile.ContentLength
+ System.IO.Path.GetExtension(FileUpload1.PostedFile.FileName);
string path = Request.MapPath(”~/Temp/“);
FileUpload1.SaveAs(path + filename);
string connExcel = ”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/StuFileManage/Temp/“ + filename + ”;Extended Properties=Excel 8.0“;
SqlConnection sqlConnection1 = new SqlConnection(connStr);
OleDbConnection oleDbConnection = new OleDbConnection(connExcel);
try
{
oleDbConnection.Open();
sqlConnection1.Open();
//打開連接
DataTable dataTable = oleDbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);//獲取excel表
string tableName = dataTable.Rows[0][2].ToString().Trim();//獲取sheet名,其中[0][1]...[N]: 按名稱排列的表單元素
tableName = ”[“ + tableName.Replace(”'“, ”“)+ ”]“;(五)學生人數(shù)統(tǒng)計關鍵代碼
private void Drawing()
{
Charting c = new Charting();
c.Title = ”廣東海洋大學學生類別統(tǒng)計“;
- 36 -
附
錄
c.XTitle = ”“;
c.YTitle = ”人數(shù)(人)“;
c.PicHight = 400;
c.PicWidth = 1000;
c.SeriesName = ”合計“;
c.PhaysicalImagePath = ”Temp“;//統(tǒng)計圖片存放的文件夾名稱
c.FileName = ”Statistics“;
c.Type = SeriesType.Cylinder;
c.Use3D = true;
SqlConnection Con = new SqlConnection(connStr);
//數(shù)據(jù)庫連接
Con.Open();
string cmdtxt = ”select count(*)as 人數(shù) from StuFile group by Gender“;
//SqlCommand Com = new SqlCommand(cmdtxt, Con);
DataSet ds = new DataSet();
SqlDataAdapter Da = new SqlDataAdapter(cmdtxt, Con);
Da.Fill(ds);
Con.Close();
SeriesCollection SC = new SeriesCollection();// 生成對比圖
Series s = new Series();
s.Name = ”男生人數(shù)“;
Element e = new Element();
e.Name = ”性別“;//對應于X軸個尺度的名稱
e.YValue = Convert.ToSingle(ds.Tables[0].Rows[0][”人數(shù)“]);
s.Elements.Add(e);
SC.Add(s);
Series s1 = new Series();
s1.Name = ”女生人數(shù)“;
Element e1 = new Element();
e1.Name = ”性別“;//對應于X軸個尺度的名稱
e1.YValue = Convert.ToSingle(ds.Tables[0].Rows[1][”人數(shù)“]);
s1.Elements.Add(e1);
SC.Add(s1);
SC[0].DefaultElement.Color
c.DataSource = SC;
c.CreateStatisticPic(this.Chart1);
}(六)數(shù)據(jù)庫備份關鍵代碼
protected void Button1_Click(object sender, EventArgs e)
{
string fullpath = Server.MapPath(TextBox1.Text.Trim().ToString());
if(!Directory.Exists(fullpath))
{
Directory.CreateDirectory(fullpath);
}
string filename = TextBox2.Text.Trim().ToString()+”.bak“;
SqlConnection connection = new SqlConnection(connStr);
SqlCommand command = new
=
Color.FromArgb(255,99,49);
/
SC[1].DefaultElement.Color = Color.FromArgb(0, 156, 255);
- 37 -
附
錄
SqlCommand(”use master;backup database StuFile to disk=@path;“, connection);
//備份數(shù)據(jù)庫語句
connection.Open();
string path = fullpath + filename;
command.Parameters.AddWithValue(”@path“, path);
command.ExecuteNonQuery();
connection.Close();
bak_down.NavigateUrl = TextBox1.Text.Trim().ToString()+ filename;
bak_down.Visible = true;
bak_delete.Visible = true;
HyperLink4.Visible = true;
TextBox1.ReadOnly = true;
TextBox2.ReadOnly = true;
}(七)數(shù)據(jù)庫還原關鍵代碼
string path=Server.MapPath(TextBox1.Text.Trim().ToString());
System.IO.FileInfo file = new System.IO.FileInfo(path);
if(TextBox1.Text.ToString()!= ”“ & FileUpload1.HasFile)
{
ShowMessageBox(”不能同時選擇兩個數(shù)據(jù)庫備份文件“);
TextBox1.Text = ”“;
}
else if(!FileUpload1.HasFile &!file.Exists)
{
ShowMessageBox(”備份文件不存在,請重新輸入“);
TextBox1.Text = ”“;
}
else if(file.Exists)
{
try
{
SqlConnection connection = new SqlConnection(connStr);
SqlCommand command = new SqlCommand(”use master;restore database StuFile from disk=@path with replace;“, connection);
//還原數(shù)據(jù)庫語句
connection.Open();
command.Parameters.AddWithValue(”@path“, path);
command.ExecuteNonQuery();
connection.Close();
ShowMessageBox(”還原成功");
}
catch(Exception ex)
{
ShowMessageBox(ex.Message);
}
- 38 -
第二篇:學生檔案管理系統(tǒng)
目錄 摘要
ABSTRACT 前言
第一章 為什么要開發(fā)一個學生檔案管理系統(tǒng)? 第二章 計算機已經(jīng)成為我們學習和工作的得力助手 1.1 在中小學中用計算機管理學生檔案的意義 1.2 為將來學校上網(wǎng)做好準備 1.4 學生檔案的設計分析
第三章 怎樣開發(fā)一個學生檔案管理系統(tǒng)? 2.1 編程環(huán)境的選擇 2.2 關系型數(shù)據(jù)庫的實現(xiàn) 2.3 二者的結合(DBA)
第四章 Windows下的Visual Basic 編程環(huán)境簡介 3.1 告別“hello world”的年代 3.2 面對對象的編程 3.3 實現(xiàn)菜單選項 3.4 實現(xiàn)工具欄 3.5 幫助 3.6關于系統(tǒng)
第五章 使用Access2000 實現(xiàn)關系型數(shù)據(jù)庫 4.1 數(shù)據(jù)庫的概念 4.2 新建一個數(shù)據(jù)庫 4.3 修改已建的數(shù)據(jù)庫 4.4 實現(xiàn)數(shù)據(jù)庫之間的聯(lián)系 第五章 系統(tǒng)總體規(guī)劃 5.1 系統(tǒng)功能 5.2 流程圖
第六章 系統(tǒng)具體實現(xiàn) 6.1 用戶界面的實現(xiàn) 6.1.1 封面 6.1.2 主界面 6.1.3 幫助系統(tǒng) 6.2 數(shù)據(jù)庫的實現(xiàn) 6.2.1 學籍數(shù)據(jù)庫 6.2.2 學生成績庫 6.2.3 課程庫 6.3 與VB的連接 第七章 結束語
第八章 主要參考文獻 附錄
--------------摘要--------------
學生檔案管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。
經(jīng)過分析,我們使用 MICROSOFT公司的 VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。
關鍵字:控件、窗體、域。
--------------ABSTRACT--------------
The system of managing student file is a typical application of managing information system(know as MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end.The former required consistency and integrality and security of data.The later should make the application powerful and easily used.By looking up lots of datum, we selected Visual Basic presented by Microsoft because of its objective tools in Win32.VB offered a series of ActiveX operating a data-base.It can give you a short-cut to build up a prototype of system application.The prototype could be modified and developed till users are satisfied with it.Keywords: ActiveX , Form , Field.--------------前言--------------
學生檔案管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的決策者和管理者來說都至關重要,所以學生檔案管理系統(tǒng)應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。
隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。
作為計算機應用的一部分,使用計算機對學生檔案信息進行管理,具有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生檔案管理的效率,也是企業(yè)的科學化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學生檔案管理系統(tǒng)為例,談談其開發(fā)過程和所涉及到的問題及解決方法。
--------------------下面就讓我們開始正文的介紹 第一章
為什么要開發(fā)一個學生檔案管理系統(tǒng)?
計算機已經(jīng)成為我們學習和工作的得力助手:
今天,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。它已經(jīng)被應用于許多領域,計算機之所以如此流行的原因主要有以下幾個方面: 首先,計算機可以代替人工進行許多繁雜的勞動; 其次,計算機可以節(jié)省許多資源;
第三,計算機可以大大的提高人們的工作效率; 第四,計算機可以使敏感文檔更加安全,等等。
在中小學中用計算機管理學生檔案的意義
現(xiàn)在我國的中小學校中檔案的管理水平還停留在紙介質(zhì)的基礎上,這樣的機制已經(jīng)不能適應時代的發(fā)展,因為它浪費了許多人力和物力,在信息時代這種傳統(tǒng)的管理方法必然被計算機為基礎的信息管理所取代。
我作為一個計算機應用的本科生,希望可以在這方面有所貢獻。改革的總設計師鄧小平同志說過“科學技術是第一生產(chǎn)力”,我希望能用我四年的所學編制出一個實用的程序來幫助中小學進行更有效的學籍管理。
歸納起來,好處大約有以下幾點:
1. 可以存儲歷屆的學生檔案,安全、高效;
2. 只需一到二名檔案錄入員即可操作系統(tǒng),節(jié)省大量人力; 3. 可以迅速查到所需信息。
為將來學校上網(wǎng)做好準備
跟據(jù)1999年中國電信的調(diào)查報告顯示我國的上網(wǎng)人數(shù)已達到890萬,互聯(lián)網(wǎng)已經(jīng)十分普及,學校往界的畢業(yè)生希望能在世界的任何一個角落查到自己校友的信息,本系統(tǒng)為學校將來的上網(wǎng)作了先期工作,比如數(shù)據(jù)庫的建立。
學生檔案的設計分析
根據(jù)實際情況,我們使用原型法(Rapid Prototyping)即以少量代價快速地構造一個可執(zhí)行的軟件系統(tǒng)模型。使用戶和開發(fā)人員可以較快地確定需求,然后采用循環(huán)進化的開發(fā)方式,對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時模塊也發(fā)展成為最終產(chǎn)品了。第二章
怎樣開發(fā)一個學生檔案管理系統(tǒng)?
編程環(huán)境的選擇
微軟公司的Visual Basic 6.0是Windows應用程序開發(fā)工具,使目前最為廣泛的、易學易用的面向?qū)ο蟮拈_發(fā)工具。Visual Basic提供了大量的控件,這些控件可用于設計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設計過程,從而有效的提高了應用程序的運行效率和可靠性。故而,實現(xiàn)本系統(tǒng)VB是一個相對較好的選擇。
關系型數(shù)據(jù)庫的實現(xiàn)
Access2000 就是關系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。Access 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于 Excel 的電子表格,可以使數(shù)據(jù)庫一目了然。另外,Access 允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。Access也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡文件服務器,與其他網(wǎng)絡用戶共享數(shù)據(jù)庫。Access 是一種關系數(shù)據(jù)庫工具,關系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access 作為關系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)包中同時擁有桌面數(shù)據(jù)庫的便利和關系數(shù)據(jù)庫的強大功能。
二者的結合(DBA)
微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic 來訪問數(shù)據(jù)庫并對其進行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。
DATA 控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic程序之間架起了一座橋梁。我們可以設置DATA控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下,DATA控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)表建立一個dynaset-type(動態(tài)集合)類型的記錄集合。一個記錄集合是動態(tài)的也就意味著,當原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。DATA控件還提供了用來瀏覽不同記錄的各種跳轉按鈕。將DATA控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。第三章
Windows下的Visual?
? ??? ?
? ?)。Visual Basic應用程序基本的構建塊是用戶所創(chuàng)建的對象,每一個對象都具有一些特性和行為(屬性、事件和 方法)。開發(fā)人員可以最有效利用所創(chuàng)建的每一個對象。使用應用程序具有可通用性可說擴展性和強有力的功能。
Visual Basic應用由一系列對象組成,包括有函數(shù)、菜單、函數(shù)、結構和數(shù)據(jù)窗口、用戶對象、用戶事件等等,對象中又包含若干控件如命令按鈕、單行編輯器等這些對象和控件都可在許多應用中重復使用。
實現(xiàn)菜單選項
菜單是程序最重要的特性之一,大多數(shù)程序都依賴一個定義良好的菜單使程序易于使用和維護,Visual Basic也提供了強大的創(chuàng)建菜單功能是程序更加標準。
您可以使用Visual Basic的Application Wizard也可以使用Visual Basic 的菜單編輯器建立菜單或者修改已經(jīng)存在的菜單。
實現(xiàn)工具欄
CoolBar控件與Office97種看到的CoolBar是類似的。CoolBar就是一個可以在窗體上浮動的工具,同時也是其他ActiveX的容器。通過在CoolBar中遷入其他空間你局可以向用戶提供更好的靈活性和義用性。
Toolbar 是工具條控件,是實現(xiàn)工具條的主體。其中的按鈕可以顯示圖像和標題,并按功能分組或加入分隔符,還可以圍棋設置鼠標停留在其上顯示的提示字符。Toolbar也是一個控件容器且具有Style屬性,并可以為其增加下拉按鈕和平滑按鈕等。
選擇“工程”下拉菜單中的“部件”選項,顯示“部件”對話框。在“控件”選項卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。其屬性及對象如下:
1. Align屬性定義工具條在窗體中的位置
2. ToolTipText屬性是字符串類型,定義控件的提示字符 3. Style屬性定義按鈕外觀。
4. ImageList屬性定義與數(shù)據(jù)條對應的ImageList控件名,該控件定義工具條按鈕顯示的圖像。5. HotImangeList屬性設置一個ImageList控件名,該控件定義按鈕獲得熱點時顯示的圖像。6. DisabledImageList屬性定義工具條按鈕無效時顯示的圖像。創(chuàng)建工具條包括ImageList和Toolbar控件 ImageList用于為其他控件提供圖像庫,將ImageList控件加入到工具箱的操作于前述Toolbar控件相同。
幫助
專業(yè)水平的軟件通常都帶有聯(lián)機幫助功能。無論寫出來的程序是要給大量的用戶使用,還是僅僅局限于公司內(nèi)部有限的使用者,我們都應該為用戶提供詳細的、易于理解的聯(lián)機幫助文檔。微軟的Help Workshop4.0 是一套獨立于Visual Basic 的用來協(xié)助我們創(chuàng)建、運行于32位Windows 操作系統(tǒng)下的幫助文件的工具。使用它我們可以為我們編寫的應用程序生成一組幫助文件。
關于版本
為了是程序顯得更具有專業(yè)風格,首先可以在其中加入通常的應用程序信息。這些信息包括公司名稱、版本號、修訂號以及其他類似信息。Visual Basic允許你使用APP對象來保存這些信息,APP對象是一個預定義對象,不需要在程序中創(chuàng)建它。APP對象的大多數(shù)屬性被應用程序用來提供常規(guī)的信息,通過使用這些APP提供的屬性,可以在應用程序和用戶之間交流重要信息,在項目屬性框中可以設置它的屬性。
第四章
使用Access2000 實現(xiàn)關系型數(shù)據(jù)庫
數(shù)據(jù)庫的概念
數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進行操作的工具。數(shù)據(jù)庫的作用在于組織和表達信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計算機的數(shù)據(jù)庫可以分為兩類:非關系數(shù)據(jù)庫(flat-file)和關系數(shù)據(jù)庫(relational)。關系數(shù)據(jù)庫中包含了多個數(shù)據(jù)表的信息,數(shù)據(jù)庫含有各個不同部分的術語,象記錄、域等。
新建一個數(shù)據(jù)庫
創(chuàng)建任何一個數(shù)據(jù)庫的第一步是仔細的規(guī)劃數(shù)據(jù)庫,設計必須是靈活的、有邏輯的。創(chuàng)建一個數(shù)據(jù)庫結構的過程被認為是數(shù)據(jù)模型設計。1. 標識需要的數(shù)據(jù);
2. 收集被標識的字段到表中; 3. 標識主關鍵字字段;
4. 繪制一個簡單的數(shù)據(jù)圖表; 5. 規(guī)范數(shù)據(jù);
6. 標識指定字段的信息; 7. 創(chuàng)建物理表。
修改已建的數(shù)據(jù)庫
數(shù)據(jù)庫的修改分為:添加、編輯和刪除記錄。這三種操作均可由Visual Basic 創(chuàng)建的程序來完成,下面的章節(jié)將詳細描述實現(xiàn)的具體方法。
實現(xiàn)數(shù)據(jù)庫之間的聯(lián)系
數(shù)據(jù)庫之間的關系指明兩個庫之間共享一個共同的關鍵字值。一個連接是指一種虛擬的表,這種表是在當用戶要求從相互關聯(lián)的各個不同的表中獲取信息時建立的,關鍵字段用于在相互連接的不同表中查找匹配的記錄。一個更高級的連接形式稱為自連接。這種連接是指一個表被連接到它自己的一個字段,或在不同的紀錄中由重復數(shù)據(jù)的組合字段。數(shù)據(jù)庫中有三種不同類型的關鍵字:主關鍵字、組合關鍵字和外關鍵字。在表中使用的關鍵字類型用于描述庫表示什么以及在數(shù)據(jù)庫中如何與其它的庫建立關系。第五章
系統(tǒng)總體規(guī)劃
系統(tǒng)功能
1. 可以進行文本操作; 2. 添加一個數(shù)據(jù)庫項目; 3. 刪除一個數(shù)據(jù)庫項目; 4. 修改一個數(shù)據(jù)庫項目; 5. 查詢信息; 6. 察看課程表。
流程圖
第六章
系統(tǒng)具體實現(xiàn)
用戶界面的實現(xiàn) 6.1.1 封面
具體實現(xiàn)見 圖_6.1.1
圖_6.1.1 6.1.2 主界面
具體實現(xiàn)見.圖_6.1.2 圖_6.1.2
主界面包含三方面的內(nèi)容,以下一一介紹: 1.記錄操作
打開記錄操作,進入記錄操作菜單項分別由文件、視圖及幫助三個選項。1.1文件包括:新建 打開
打開寫字板---------如圖<6.1.4>(源程序見附錄清單6.1)保存 另存 打印 退出
<圖6.1.4> 1.2視圖包括:狀態(tài)條 工具欄 背景顏色 顯示
課程表---------如圖<6.1.5> 文本編輯器
網(wǎng)絡瀏覽 <圖6.1.5> 1.3幫助包括:內(nèi)容 關于幫助 2.記錄操作
打開記錄操作進入記錄操作選項頁分別由瀏覽記錄、查找等三個選項組成。2.1瀏覽記錄: 學生學籍庫 課程庫 成績庫
2.2查找記錄 2.3備注 3.系統(tǒng)信息
打開系統(tǒng)信息進入選項頁分別由系統(tǒng)信息、信息采集等組成。
6.1.3 幫助系統(tǒng) 具體實現(xiàn)見6.1.3
圖6.1.3
數(shù)據(jù)庫的實現(xiàn)
6.2.1學籍數(shù)據(jù)庫
學籍數(shù)據(jù)庫里存儲了學生的檔案包括:學號、姓名、年齡等 表如<6.2.6>
列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空姓名Name Date8No學號CodeInteger6No性別SexDate2No年齡AgeDate6No民族NationDate6No政治面貌Visage...Date2...Yes...家庭住址AddressDate10No備注RecordDate15No 表<6.2.6> 學籍模塊:
該模塊主要完成學生基本信息的錄入、刪除、更新等功能。在此模塊中定義了八個域名來進行學生的信息存儲。如果用戶修改某一紀錄中的某一項,可單添加按鈕進行學生記錄的編輯,此窗口使用數(shù)據(jù)窗口的FREEDOM風格(典型的錄入界面)。該種風格特點是列標題緊挨著數(shù)據(jù)列在此窗口還可以增加新學生紀錄。
6.2.2成績數(shù)據(jù)庫
成績數(shù)據(jù)庫里存儲了學生的成績包括:學號、成績、等如表<6.2.7 >
列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空姓名Name Date8No學號CodeInteger6No成績ScoreDate10No備注RecordDate15No 表<6.2.7> 成績模塊:
該模塊主要完成學生成績的基本信息的錄入、刪除、更新等功能。在此模塊中定義了四個域名來進行學生的信息存儲。
6.2.3課程數(shù)據(jù)庫
課程數(shù)據(jù)庫利存儲了課程的信息:課程名、作者、出版社等如表<6.2.8>
列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空課程IDCourseDate8No課程名NameDate15No出版社PublisherDate20No作者ScoreDate18No備注RecordDate15No 表<6.2.8> 課程模塊:
該模塊主要完成存儲課程的所有信息及錄入、刪除、更新等功能
與VB的連接
Visual Basic提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。Visual Basic 支持不同的關系數(shù)據(jù)庫管理系統(tǒng)并充分發(fā)揮每一個數(shù)據(jù)庫的特長。生成獨立應用或脫離服務器運行的服務以上的應用,Visual Basic連接數(shù)據(jù)庫的方式有兩種: ·通過使用Visual Basic的 DATA控件。
·通過使用由Visual Basic提供的專用的直接與數(shù)據(jù)庫相連的接口 第七章
結束語
經(jīng)過三個多月的設計和開發(fā),中小學檔案管理系統(tǒng)基本開發(fā)完畢。其功能基本符合用戶需求,能夠完成學生學籍的存儲和成績的查詢以及各類相關報表的打印。并提供部分系統(tǒng)維護功能,使用戶方便進行數(shù)據(jù)備份和恢復、數(shù)據(jù)刪除。,對于數(shù)據(jù)的一致性的問題也通過程序進行了有效的解決。
但是由于畢業(yè)設計時間較短,所以該系統(tǒng)還有許多不盡如人意的地方,比如聯(lián)機文檔比較少,用戶界面不夠美觀,出錯處理不夠等多方面問題。這些都有待進一步改善。
致謝
在本次畢業(yè)設計中,我從指導老師雷震甲老師身上學到了很多東西。雷老師認真負責的工作態(tài)度,嚴謹?shù)闹螌W精神和深厚的理論水平都使我收益匪淺。他無論在理論上還是在實踐中,都給與我很大的幫助,使我得到不少的提高這對于我以后的工作和學習都有一種巨大的幫助,感謝他耐心的輔導。另外,在系統(tǒng)開發(fā)過程中雷老師的助手張彥明老師也給于我很大的幫助,幫助解決了不少的難點,使得系統(tǒng)能及時開發(fā)完成,還有同組的同學同樣給與我不少幫助,這里一并表示感謝。
第八章
主要參考文獻
[1] Visual Basic 6.0 使用指南
作者:Bob Reselman , Richard Peasley , Wayne Pruchniak.出版社:電子工業(yè)出版社
[2] 中文版Microsoft Office 97 自學通 作者:Ned Snell 出版社:機械工業(yè)出版社
[3] Visual Basic 6.0 中文版控件大全 作者:Microsoft 出版社;電子工業(yè)出版社
[4] 中文Access 2000 24學時教程
作者:Craig Eddy,Timothy Buchanan 出版社:機械工業(yè)出版社
附錄程序清單及注釋 程序清單6.1 Option Explicit Dim FileName As String '文件名,用于打開、保存文件 Dim UndoString As String '用于 Undo 操作 Dim UndoNew As String '用于 Undo 操作
Private Sub ImgUndoDisable()'禁用“Undo”按鈕 UndoString = “" UndoNew = ”“ ImgUndo.Enabled = False ImgUndo.Picture = ImageDisable.ListImages(”Undo“).Picture End Sub
Private Sub ImgUndoEnable()'有效“Undo”按鈕
ImgUndo.Enabled = True ImgUndo.Picture = ImageUp.ListImages(”Undo“).Picture End Sub
Private Sub Check_ImgPaste()'設置粘貼按鈕
If Len(Clipboard.GetText)> 0 Then ImgPaste.Enabled = True ImgPaste.Picture = ImageUp.ListImages(”Paste“).Picture Else ImgPaste.Enabled = False ImgPaste.Picture = ImageDisable.ListImages(”Paste“).Picture End If End Sub
Private Sub Check_ImgCutCopy()'設置剪切、復制按鈕
If Text1.SelLength > 0 Then ImgCut.Enabled = True ImgCut.Picture = ImageUp.ListImages(”Cut“).Picture ImgCopy.Enabled = True ImgCopy.Picture = ImageUp.ListImages(”Copy“).Picture Else ImgCut.Enabled = False ImgCut.Picture = ImageDisable.ListImages(”Cut“).Picture ImgCopy.Enabled = False ImgCopy.Picture = ImageDisable.ListImages(”Copy“).Picture End If End Sub Private Sub BackColor_Click()CommonDialog1.ShowColor Text1.BackColor = CommonDialog1.Color End Sub
Private Sub Box_Click()'顯停工具欄
If Box.Checked Then '將停顯工具欄
Box.Checked = False CoolBar1.Visible = False Else Box.Checked = True CoolBar1.Visible = True End If
Form_Resize '重新調(diào)整控件位置 End Sub
Private Sub Close_Click()Dim FileNum As Integer
If Len(FileName)> 0 Then '有輸入文件名
FileNum = FreeFile()'獲得可用文件號
Open FileName For Output As FileNum '打開輸出文件 '如果無指定文件,則創(chuàng)建新文件 Print #FileNum, Text1.Text '輸出文本 Close FileNum '關閉文件 End If
Text1.Text = ”“ FileName = ”“ End Sub
Private Sub ComboSize_Click()Text1.FontSize = Val(ComboSize.Text)End Sub
Private Sub ComboFont_Click()Text1.FontName = ComboFont.Text End Sub
Private Sub Copy_Click()Clipboard.SetText Text1.SelText '復制文本到剪裁板 End Sub
Private Sub Cut_Click()Clipboard.SetText Text1.SelText '復制文本到剪裁板 Text1.SelText = ”“ '清選擇的文本 End Sub
Private Sub DataTime_Click()Text1.SelText = Now End Sub
Private Sub Delete_Click()Text1.SelText = ”“ '清選擇的文本 End Sub
Private Sub Edit_Click()'當程序顯示“編輯”子菜單前,觸發(fā)該程序 If Text1.SelLength > 0 Then '文本框中有選中的文本 Cut.Enabled = True Copy.Enabled = True Delete.Enabled = True Else Cut.Enabled = False Copy.Enabled = False Delete.Enabled = False End If
If Len(Clipboard.GetText())> 0 Then '剪裁板中有文本數(shù)據(jù) Paste.Enabled = True Else '沒有可粘貼的文本 Paste.Enabled = False End If End Sub
Private Sub Exit_Click()Unload Me End Sub Private Sub FindText_KeyPress(KeyAscii As Integer)Dim BeginPos As Long
If KeyAscii = 13 Then BeginPos = InStr(1, Text1.Text, FindText.Text, vbTextCompare)If BeginPos > 0 Then Text1.SelStart = BeginPos1 ComboFont.AddItem Screen.Fonts(i)Next i End Sub
Private Sub Form_Resize()Dim TextTop As Long
'修改工具條大小
CoolBar1.Top = Me.ScaleTop ? ?? ??? ?? ??? ?? ? Me.ScaleLeft Text1.Width = Me.ScaleWidth If Me.ScaleHeight > CoolBar1.Height Then Text1.Height = Me.ScaleHeight” + FileName '修改標題顯示 End If End Sub
Private Sub Paste_Click()Text1.SelText = Clipboard.GetText End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Label1 = “工具欄” End Sub
Private Sub Picture1_Resize()If Picture1.Width > Label1.Left Then Label1.Width = Picture1.ScaleWidth" + FileName '修改標題顯示 ImgUndoDisable End If End Sub
Private Sub Text1_Change()If Not ImgUndo.Enabled Then '使“Undo”按鈕可用 ImgUndoEnable End If UndoString = UndoNew UndoNew = Text1 End Sub
Private Sub Text1_Click()Check_ImgCutCopy End Sub
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)Check_ImgCutCopy End sub
第三篇:學生檔案管理系統(tǒng)
目錄 摘要 ABSTRACT 前言
第一章 為什么要開發(fā)一個學生檔案管理系統(tǒng)? 第二章 計算機已經(jīng)成為我們學習和工作的得力助手 1.1 在中小學中用計算機管理學生檔案的意義 1.2 為將來學校上網(wǎng)做好準備 1.4 學生檔案的設計分析
第三章 怎樣開發(fā)一個學生檔案管理系統(tǒng)? 2.1 編程環(huán)境的選擇 2.2 關系型數(shù)據(jù)庫的實現(xiàn) 2.3 二者的結合(DBA)
第四章 Windows下的Visual Basic 編程環(huán)境簡介 3.1 告別“hello world”的年代 3.2 面對對象的編程 3.3 實現(xiàn)菜單選項 3.4 實現(xiàn)工具欄 3.5 幫助 3.6關于系統(tǒng)
第五章 使用Access2000 實現(xiàn)關系型數(shù)據(jù)庫 4.1 數(shù)據(jù)庫的概念 4.2 新建一個數(shù)據(jù)庫 4.3 修改已建的數(shù)據(jù)庫 4.4 實現(xiàn)數(shù)據(jù)庫之間的聯(lián)系 第五章 系統(tǒng)總體規(guī)劃 5.1 系統(tǒng)功能 5.2 流程圖
第六章 系統(tǒng)具體實現(xiàn) 6.1 用戶界面的實現(xiàn) 6.1.1 封面 6.1.2 主界面 6.1.3 幫助系統(tǒng) 6.2 數(shù)據(jù)庫的實現(xiàn) 6.2.1 學籍數(shù)據(jù)庫 6.2.2 學生成績庫 6.2.3 課程庫 6.3 與VB的連接 第七章 結束語 第八章 主要參考文獻 附錄
--------------摘要--------------學生檔案管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。
經(jīng)過分析,我們使用 MICROSOFT公司的 VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。
關鍵字:控件、窗體、域。
--------------ABSTRACT--------------The system of managing student file is a typical application of managing information system(know as MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end.The former required consistency and integrality and security of data.The later should make the application powerful and easily used.By looking up lots of datum, we selected Visual Basic presented by Microsoft because of its objective tools in Win32.VB offered a series of ActiveX operating a data-base.It can give you a short-cut to build up a prototype of system application.The prototype could be modified and developed till users are satisfied with it.Keywords: ActiveX , Form , Field.--------------前言--------------學生檔案管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的決策者和管理者來說都至關重要,所以學生檔案管理系統(tǒng)應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。
作為計算機應用的一部分,使用計算機對學生檔案信息進行管理,具有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生檔案管理的效率,也是企業(yè)的科學化、正規(guī)化管理,與世界接軌的重要條件。
因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學生檔案管理系統(tǒng)為例,談談其開發(fā)過程和所涉及到的問題及解決方法。第一章
為什么要開發(fā)一個學生檔案管理系統(tǒng)?
計算機已經(jīng)成為我們學習和工作的得力助手:
今天,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。它已經(jīng)被應用于許多領域,計算機之所以如此流行的原因主要有以下幾個方面: 首先,計算機可以代替人工進行許多繁雜的勞動; 其次,計算機可以節(jié)省許多資源;
第三,計算機可以大大的提高人們的工作效率; 第四,計算機可以使敏感文檔更加安全,等等。
在中小學中用計算機管理學生檔案的意義
現(xiàn)在我國的中小學校中檔案的管理水平還停留在紙介質(zhì)的基礎上,這樣的機制已經(jīng)不能適應時代的發(fā)展,因為它浪費了許多人力和物力,在信息時代這種傳統(tǒng)的管理方法必然被計算機為基礎的信息管理所取代。
我作為一個計算機應用的本科生,希望可以在這方面有所貢獻。改革的總設計師鄧小平同志說過“科學技術是第一生產(chǎn)力”,我希望能用我四年的所學編制出一個實用的程序來幫助中小學進行更有效的學籍管理。
歸納起來,好處大約有以下幾點:
1. 可以存儲歷屆的學生檔案,安全、高效;
2. 只需一到二名檔案錄入員即可操作系統(tǒng),節(jié)省大量人力; 3. 可以迅速查到所需信息。
為將來學校上網(wǎng)做好準備
跟據(jù)1999年中國電信的調(diào)查報告顯示我國的上網(wǎng)人數(shù)已達到890萬,互聯(lián)網(wǎng)已經(jīng)十分普及,學校往界的畢業(yè)生希望能在世界的任何一個角落查到自己校友的信息,本系統(tǒng)為學校將來的上網(wǎng)作了先期工作,比如數(shù)據(jù)庫的建立。
學生檔案的設計分析
根據(jù)實際情況,我們使用原型法(Rapid Prototyping)即以少量代價快速地構造一個可執(zhí)行的軟件系統(tǒng)模型。使用戶和開發(fā)人員可以較快地確定需求,然后采用循環(huán)進化的開發(fā)方式,對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時模塊也發(fā)展成為最終產(chǎn)品了。第二章
怎樣開發(fā)一個學生檔案管理系統(tǒng)?
編程環(huán)境的選擇
微軟公司的Visual Basic 6.0是Windows應用程序開發(fā)工具,使目前最為廣泛的、易學易用的面向?qū)ο蟮拈_發(fā)工具。Visual Basic提供了大量的控件,這些控件可用于設計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設計過程,從而有效的提高了應用程序的運行效率和可靠性。故而,實現(xiàn)本系統(tǒng)VB是一個相對較好的選擇。
關系型數(shù)據(jù)庫的實現(xiàn)
Access2000 就是關系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。Access 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于 Excel 的電子表格,可以使數(shù)據(jù)庫一目了然。另外,Access 允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。Access也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡文件服務器,與其他網(wǎng)絡用戶共享數(shù)據(jù)庫。Access 是一種關系數(shù)據(jù)庫工具,關系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access 作為關系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)包中同時擁有桌面數(shù)據(jù)庫的便利和關系數(shù)據(jù)庫的強大功能。
二者的結合(DBA)
微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic 來訪問數(shù)據(jù)庫并對其進行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。
DATA 控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic程序之間架起了一座橋梁。我們可以設置DATA控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下,DATA控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)表建立一個dynaset-type(動態(tài)集合)類型的記錄集合。一個記錄集合是動態(tài)的也就意味著,當原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。DATA控件還提供了用來瀏覽不同記錄的各種跳轉按鈕。將DATA控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。
Visual Basic應用程序基本的構建塊是用戶所創(chuàng)建的對象,每一個對象都具有一些特性和行為(屬性、事件和 方法)。開發(fā)人員可以最有效利用所創(chuàng)建的每一個對象。使用應用程序具有可通用性可說擴展性和強有力的功能。
Visual Basic應用由一系列對象組成,包括有函數(shù)、菜單、函數(shù)、結構和數(shù)據(jù)窗口、用戶對象、用戶事件等等,對象中又包含若干控件如命令按鈕、單行編輯器等這些對象和控件都可在許多應用中重復使用。實現(xiàn)菜單選項
菜單是程序最重要的特性之一,大多數(shù)程序都依賴一個定義良好的菜單使程序易于使用和維護,Visual Basic也提供了強大的創(chuàng)建菜單功能是程序更加標準。
您可以使用Visual Basic的Application Wizard也可以使用Visual Basic 的菜單編輯器建立菜單或者修改已經(jīng)存在的菜單。
實現(xiàn)工具欄
CoolBar控件與Office97種看到的CoolBar是類似的。CoolBar就是一個可以在窗體上浮動的工具,同時也是其他ActiveX的容器。通過在CoolBar中遷入其他空間你局可以向用戶提供更好的靈活性和義用性。
Toolbar 是工具條控件,是實現(xiàn)工具條的主體。其中的按鈕可以顯示圖像和標題,并按功能分組或加入分隔符,還可以圍棋設置鼠標停留在其上顯示的提示字符。Toolbar也是一個控件容器且具有Style屬性,并可以為其增加下拉按鈕和平滑按鈕等。
選擇“工程”下拉菜單中的“部件”選項,顯示“部件”對話框。在“控件”選項卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。其屬性及對象如下: 1. Align屬性定義工具條在窗體中的位置
2. ToolTipText屬性是字符串類型,定義控件的提示字符 3. Style屬性定義按鈕外觀。
4. ImageList屬性定義與數(shù)據(jù)條對應的ImageList控件名,該控件定義工具條按鈕顯示的圖像。5. HotImangeList屬性設置一個ImageList控件名,該控件定義按鈕獲得熱點時顯示的圖像。6. DisabledImageList屬性定義工具條按鈕無效時顯示的圖像。創(chuàng)建工具條包括ImageList和Toolbar控件
ImageList用于為其他控件提供圖像庫,將ImageList控件加入到工具箱的操作于前述Toolbar控件相同。
幫助
專業(yè)水平的軟件通常都帶有聯(lián)機幫助功能。無論寫出來的程序是要給大量的用戶使用,還是僅僅局限于公司內(nèi)部有限的使用者,我們都應該為用戶提供詳細的、易于理解的聯(lián)機幫助文檔。微軟的Help Workshop4.0 是一套獨立于Visual Basic 的用來協(xié)助我們創(chuàng)建、運行于32位Windows 操作系統(tǒng)下的幫助文件的工具。使用它我們可以為我們編寫的應用程序生成一組幫助文件。
關于版本
為了是程序顯得更具有專業(yè)風格,首先可以在其中加入通常的應用程序信息。這些信息包括公司名稱、版本號、修訂號以及其他類似信息。Visual Basic允許你使用APP對象來保存這些信息,APP對象是一個預定義對象,不需要在程序中創(chuàng)建它。APP對象的大多數(shù)屬性被應用程序用來提供常規(guī)的信息,通過使用這些APP提供的屬性,可以在應用程序和用戶之間交流重要信息,在項目屬性框中可以設置它的屬性。第四章
使用Access2000 實現(xiàn)關系型數(shù)據(jù)庫
數(shù)據(jù)庫的概念
數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進行操作的工具。數(shù)據(jù)庫的作用在于組織和表達信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計算機的數(shù)據(jù)庫可以分為兩類:非關系數(shù)據(jù)庫(flat-file)和關系數(shù)據(jù)庫(relational)。關系數(shù)據(jù)庫中包含了多個數(shù)據(jù)表的信息,數(shù)據(jù)庫含有各個不同部分的術語,象記錄、域等。新建一個數(shù)據(jù)庫
創(chuàng)建任何一個數(shù)據(jù)庫的第一步是仔細的規(guī)劃數(shù)據(jù)庫,設計必須是靈活的、有邏輯的。創(chuàng)建一個數(shù)據(jù)庫結構的過程被認為是數(shù)據(jù)模型設計。1. 標識需要的數(shù)據(jù);
2. 收集被標識的字段到表中; 3. 標識主關鍵字字段; 4. 繪制一個簡單的數(shù)據(jù)圖表; 5. 規(guī)范數(shù)據(jù);
6. 標識指定字段的信息; 7. 創(chuàng)建物理表。
修改已建的數(shù)據(jù)庫
數(shù)據(jù)庫的修改分為:添加、編輯和刪除記錄。這三種操作均可由Visual Basic 創(chuàng)建的程序來完成,下面的章節(jié)將詳細描述實現(xiàn)的具體方法。
實現(xiàn)數(shù)據(jù)庫之間的聯(lián)系
數(shù)據(jù)庫之間的關系指明兩個庫之間共享一個共同的關鍵字值。一個連接是指一種虛擬的表,這種表是在當用戶要求從相互關聯(lián)的各個不同的表中獲取信息時建立的,關鍵字段用于在相互連接的不同表中查找匹配的記錄。一個更高級的連接形式稱為自連接。這種連接是指一個表被連接到它自己的一個字段,或在不同的紀錄中由重復數(shù)據(jù)的組合字段。數(shù)據(jù)庫中有三種不同類型的關鍵字:主關鍵字、組合關鍵字和外關鍵字。在表中使用的關鍵字類型用于描述庫表示什么以及在數(shù)據(jù)庫中如何與其它的庫建立關系。第五章 系統(tǒng)總體規(guī)劃
系統(tǒng)功能
1. 可以進行文本操作; 2. 添加一個數(shù)據(jù)庫項目; 3. 刪除一個數(shù)據(jù)庫項目; 4. 修改一個數(shù)據(jù)庫項目; 5. 查詢信息; 6. 察看課程表。
流程圖
第六章 系統(tǒng)具體實現(xiàn)
用戶界面的實現(xiàn) 6.1.1 封面 具體實現(xiàn)見 圖_6.1.1 圖_6.1.1 6.1.2 主界面
具體實現(xiàn)見.圖_6.1.2 圖_6.1.2 主界面包含三方面的內(nèi)容,以下一一介紹: 1.記錄操作
打開記錄操作,進入記錄操作菜單項分別由文件、視圖及幫助三個選項。1.1文件包括:新建 打開
打開寫字板---------如圖<6.1.4>(源程序見附錄清單6.1)保存 另存 打印 退出 <圖6.1.4> 1.2視圖包括:狀態(tài)條 工具欄 背景顏色 顯示
課程表---------如圖<6.1.5> 文本編輯器 網(wǎng)絡瀏覽 <圖6.1.5> 1.3幫助包括:內(nèi)容 關于幫助 2.記錄操作
打開記錄操作進入記錄操作選項頁分別由瀏覽記錄、查找等三個選項組成。2.1瀏覽記錄: 學生學籍庫 課程庫 成績庫 2.2查找記錄 2.3備注 3.系統(tǒng)信息
打開系統(tǒng)信息進入選項頁分別由系統(tǒng)信息、信息采集等組成。6.1.3 幫助系統(tǒng) 具體實現(xiàn)見6.1.3
圖6.1.3 數(shù)據(jù)庫的實現(xiàn) 6.2.1學籍數(shù)據(jù)庫
學籍數(shù)據(jù)庫里存儲了學生的檔案包括:學號、姓名、年齡等 表如<6.2.6> 列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空姓名Name Date8No學號CodeInteger6No性別SexDate2No年齡AgeDate6No民族NationDate6No政治面貌Visage...Date2...Yes...家庭住址AddressDate10No備注RecordDate15No 表<6.2.6> 學籍模塊:
該模塊主要完成學生基本信息的錄入、刪除、更新等功能。在此模塊中定義了八個域名來進行學生的信息存儲。如果用戶修改某一紀錄中的某一項,可單添加按鈕進行學生記錄的編輯,此窗口使用數(shù)據(jù)窗口的FREEDOM風格(典型的錄入界面)。該種風格特點是列標題緊挨著數(shù)據(jù)列在此窗口還可以增加新學生紀錄。6.2.2成績數(shù)據(jù)庫
成績數(shù)據(jù)庫里存儲了學生的成績包括:學號、成績、等如表<6.2.7 > 列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空姓名Name Date8No學號CodeInteger6No成績ScoreDate10No備注RecordDate15No 表<6.2.7> 成績模塊:
該模塊主要完成學生成績的基本信息的錄入、刪除、更新等功能。在此模塊中定義了四個域名來進行學生的信息存儲。6.2.3課程數(shù)據(jù)庫
課程數(shù)據(jù)庫利存儲了課程的信息:課程名、作者、出版社等如表<6.2.8> 列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空課程IDCourseDate8No課程名NameDate15No出版社PublisherDate20No作者ScoreDate18No備注RecordDate15No 表<6.2.8> 與VB的連接
Visual Basic提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。Visual Basic 支持不同的關系數(shù)據(jù)庫管理系統(tǒng)并充分發(fā)揮每一個數(shù)據(jù)庫的特長。生成獨立應用或脫離服務器運行的服務以上的應用,Visual Basic連接數(shù)據(jù)庫的方式有兩種: ·通過使用Visual Basic的 DATA控件。
·通過使用由Visual Basic提供的專用的直接與數(shù)據(jù)庫相連的接口 第七章 結束語 經(jīng)過三個多月的設計和開發(fā),中小學檔案管理系統(tǒng)基本開發(fā)完畢。其功能基本符合用戶需求,能夠完成學生學籍的存儲和成績的查詢以及各類相關報表的打印。并提供部分系統(tǒng)維護功能,使用戶方便進行數(shù)據(jù)備份和恢復、數(shù)據(jù)刪除。,對于數(shù)據(jù)的一致性的問題也通過程序進行了有效的解決。
但是由于畢業(yè)設計時間較短,所以該系統(tǒng)還有許多不盡如人意的地方,比如聯(lián)機文檔比較少,用戶界面不夠美觀,出錯處理不夠等多方面問題。這些都有待進一步改善。致謝
在本次畢業(yè)設計中,我從指導老師雷震甲老師身上學到了很多東西。雷老師認真負責的工作態(tài)度,嚴謹?shù)闹螌W精神和深厚的理論水平都使我收益匪淺。他無論在理論上還是在實踐中,都給與我很大的幫助,使我得到不少的提高這對于我以后的工作和學習都有一種巨大的幫助,感謝他耐心的輔導。
另外,在系統(tǒng)開發(fā)過程中雷老師的助手張彥明老師也給于我很大的幫助,幫助解決了不少的難點,使得系統(tǒng)能及時開發(fā)完成,還有同組的同學同樣給與我不少幫助,這里一并表示感謝。
第八章
主要參考文獻
[1] Visual Basic 6.0 使用指南
作者:Bob Reselman , Richard Peasley , Wayne Pruchniak.出版社:電子工業(yè)出版社
[2] 中文版Microsoft Office 97 自學通 作者:Ned Snell 出版社:機械工業(yè)出版社
[3] Visual Basic 6.0 中文版控件大全 作者:Microsoft 出版社;電子工業(yè)出版社
[4] 中文Access 2000 24學時教程 作者:Craig Eddy,Timothy Buchanan 出版社:機械工業(yè)出版社
第四篇:學生檔案管理系統(tǒng)任務書.
西安高新科技職業(yè)學院 負責人:張琳 批準日期: 畢 業(yè) 設 計(論 文任 務 書 專業(yè) 班 學生
一、畢 業(yè)設計(論文 課題 基于 Struts 的圖書館管理系統(tǒng)
二、畢業(yè)設計(論文 工作 2012 年 3 月 3 日起至 2012 年 6 月 8 日止
三、畢業(yè)設計(論文 進行地點 校 外
四、畢業(yè)設計(論文 的內(nèi)容要求:
一、目的
在 Myeclipse8.0平臺上, 使用 Java 語言以及 MYSQL 數(shù)據(jù)庫, 完成基于 Struts 的圖書館 管理系統(tǒng)。
二、要求
1、查閱文獻,收集解決方案并比較, 寫出高質(zhì)量開題報告。
2、總體結構設計及數(shù)據(jù)庫設計。
3、詳細設計:功能設計、流程設計、界面設計
4、實現(xiàn)。利用 Java 語言和 MYSQL 實現(xiàn)所設計的系統(tǒng) , 主要功能為:⑴、修改密碼 ⑵、查 詢書籍 ⑶、添加書籍 ⑷、刪除書籍(5、修改書籍(6、添加用戶(7、修改用戶(8、刪除用戶(9、查詢用戶(10、記事本(11退出系統(tǒng)。
三、設計步驟
1、查閱文獻,收集解決方案并比較,寫出高質(zhì)量開題報告。
2、系統(tǒng)總體結構設計:對總系統(tǒng)進行劃分,確定個子系統(tǒng)及其功能。
3、數(shù)據(jù)庫設計:有關表為用戶表、學生表、圖書統(tǒng)計表、記事本表等。
4、系統(tǒng)詳細設計:功能設計、流程設計、界面設計。
5、系統(tǒng)實現(xiàn):熟悉 Myeclipse8.0平臺的使用,用 Java 以及數(shù)據(jù)庫技術實現(xiàn)本系統(tǒng)。
6、翻譯 5000詞英文文獻、撰寫設計論文。
四、畢業(yè)設計條件
1、本人計算機一臺。
2、指導老師盡量提供設計需要的參考書,必要時為學生購買,提供學生必要的資料打印和 復印費用。
五、計劃安排 詳細內(nèi)容見進度表。
六、論文要求
1、中英文摘要。
2、目錄
3、正文,不少于 20頁(16開
4、參考文擋
七、論文答辯
1、總結畢設主要工作。
2、分析畢設中遇到的難題及采用的方法和理論依據(jù)。
3、分析設計中取得的成果及未來展望。
八、要求閱讀的資料1、2 負責指導教師 張琳 指 導 教 師 張琳
接受設計論文任務開始執(zhí)行日期 2012年 2月 6日 學生簽名 楊帥
第五篇:學生檔案管理系統(tǒng)(vb)
萊 蕪 職 業(yè) 技 術 學
院
畢業(yè)設計(論文)
所 在 系:計算機系 姓 名: 韓坤 論文題目:學生檔案管理系統(tǒng)
專 業(yè):軟件應用技術 班 級:07級軟件一班 指導老師:宋文敏
二零一零 年 四月 月 三十 日
摘 要
學生檔案管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。
經(jīng)過分析,我們使用 MICROSOFT公司的 VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。
關鍵字:控件、窗體、域。
ABSTRACT The system of managing student file is a typical application of managing information system(know as MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end.The former required consistency and integrality and security of data.The later should make the application powerful and easily used.By looking up lots of datum, we selected Visual Basic presented by Microsoft because of its objective tools in Win32.VB offered a series of ActiveX operating a data-base.It can give you a short-cut to build up a prototype of system application.The prototype could be modified and developed till users are satisfied with it.Keywords: ActiveX , Form , Field.目 錄
--------8-9--------
--------10-31--------
--------31-32--------
----------33----------
言學生檔案管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的決策者和管理者來說都至關重要,所以學生檔案管理系統(tǒng)應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。作為計算機應用的一部分,使用計算機對學生檔案信息進行管理,具有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生檔案管理的效率,也是企業(yè)的科學化、正規(guī)化管理,與世界接軌的重要條件。
因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學生檔案管理系統(tǒng)為例,談談其開發(fā)過程和所涉及到的問題及解決方法。
需求分析
計算機已經(jīng)成為我們學習和工作的得力助手:
今天,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。它已經(jīng)被應用于許多領域,計算機之所以如此流行的原因主要有以下幾個方面: 首先,計算機可以代替人工進行許多繁雜的勞動; 其次,計算機可以節(jié)省許多資源;
技術上可行性:
軟件界面清晰,整潔。功能一目了然,操作簡單,容易上手,對于一般網(wǎng)絡操作者都能勝任。
綜上所述,本系統(tǒng)的設計與開發(fā)在技術上和硬件設備上的條件都是滿足的,因此,它在技術上是可行的。運行上可行性:
本系統(tǒng)為一個小型的編輯系統(tǒng),所耗費的資源非常的小,具體的系統(tǒng)需求如下:
CPU:至少200MHz Intel Pentinm 處理器
操作系統(tǒng):Windows 98 拉按鈕和平滑按鈕等。
選擇“工程”下拉菜單中的“部件”選項,顯示“部件”對話框。在“控件”選項卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。其屬性及對象如下:
1. Align屬性定義工具條在窗體中的位置
2. ToolTipText屬性是字符串類型,定義控件的提示字符 3. Style屬性定義按鈕外觀。
4. ImageList屬性定義與數(shù)據(jù)條對應的ImageList控件名,該控件定義工具條按鈕顯示的圖像。
5. HotImangeList屬性設置一個ImageList控件名,該控件定義按鈕獲得熱點時顯示的圖像。
6. DisabledImageList屬性定義工具條按鈕無效時顯示的圖像。創(chuàng)建工具條包括ImageList和Toolbar控件
ImageList用于為其他控件提供圖像庫,將ImageList控件加入到工具箱的操作于前述Toolbar控件相同。
3.3幫助
專業(yè)水平的軟件通常都帶有聯(lián)機幫助功能。無論寫出來的程序是要給大量的用戶使用,還是僅僅局限于公司內(nèi)部有限的使用者,我們都應該為用戶提供詳細的、易于理解的聯(lián)機幫助文檔。微軟的Help Workshop4.0 是一套獨立于Visual Basic 的用來協(xié)助我們創(chuàng)建、運行于32位Windows 操作系統(tǒng)下的幫助文件的工具。使用它我們可以為我們編寫的應用程序生成一組幫助文件。
3.4關于版本
為了是程序顯得更具有專業(yè)風格,首先可以在其中加入通常的應用程序信息。這些信息包括公司名稱、版本號、修訂號以及其他類似信息。Visual Basic允許你使用APP對象來保存這些信息,APP對象是一個預定義對象,不需要在程序中創(chuàng)建它。APP對象的大多數(shù)屬性被應用程序用來提供常規(guī)的信息,通過使用這些APP提供的屬性,可以在應用程序和用戶之間交流重要信息,在項目屬性框中可以設置它的屬性。
使用Access2000 實現(xiàn)關系型數(shù)據(jù)庫
3.5數(shù)據(jù)庫的概念
數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進行操作的工具。數(shù)據(jù)庫的作用在于組織和表達信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計算機的數(shù)據(jù)庫可以分為兩類:非關系數(shù)據(jù)庫(flat-file)和關系數(shù)據(jù)庫(relational)。關系數(shù)據(jù)庫中包含了多個數(shù)據(jù)表的信息,數(shù)據(jù)庫含有各個不同部分的術語,象記錄、域等。
新建一個數(shù)據(jù)庫
創(chuàng)建任何一個數(shù)據(jù)庫的 6. 標識指定字段的信息; 7. 創(chuàng)建物理表。
修改已建的數(shù)據(jù)庫
數(shù)據(jù)庫的修改分為:添加、編輯和刪除記錄。這三種操作均可由Visual Basic 創(chuàng)建的程序來完成,下面的章節(jié)將詳細描述實現(xiàn)的具體方法。
實現(xiàn)數(shù)據(jù)庫之間的聯(lián)系
數(shù)據(jù)庫之間的關系指明兩個庫之間共享一個共同的關鍵字值。一個連接是指一種虛擬的表,這種表是在當用戶要求從相互關聯(lián)的各個不同的表中獲取信息時建立的,關鍵字段用于在相互連接的不同表中查找匹配的記錄。一個更高級的連接形式稱為自連接。這種連接是指一個表被連接到它自己的一個字段,或在不同的紀錄中由重復數(shù)據(jù)的組合字段。數(shù)據(jù)庫中有三種不同類型的關鍵字:主關鍵字、組合關鍵字和外關鍵字。在表中使用的關鍵字類型用于描述庫表示什么以及在數(shù)據(jù)庫中如何與其它的庫建立關系。系統(tǒng)總體規(guī)劃
3.6系統(tǒng)功能
1. 可以進行文本操作; 2. 添加一個數(shù)據(jù)庫項目; 3. 刪除一個數(shù)據(jù)庫項目; 4. 修改一個數(shù)據(jù)庫項目; 5. 查詢信息; 6. 察看課程表。
學號CodeInteger6No性別SexDate2No年齡AgeDate6No民族NationDate6No政治面貌Visage...Date2...Yes...家庭住址AddressDate10No備注RecordDate15No 學籍模塊:
該模塊主要完成學生基本信息的錄入、刪除、更新等功能。在此模塊中定義了八個域名來進行學生的信息存儲。如果用戶修改某一紀錄中的某一項,可單添加按鈕進行學生記錄的編輯,此窗口使用數(shù)據(jù)窗口的FREEDOM風格(典型的錄入界面)。該種風格特點是列標題緊挨著數(shù)據(jù)列在此窗口還可以增加新學生紀錄。
4.4.2成績數(shù)據(jù)庫
成績數(shù)據(jù)庫里存儲了學生的成績包括:學號、成績、等
列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空姓名Name Date8No學號CodeInteger6No成績ScoreDate10No備注RecordDate15No 成績模塊:
該模塊主要完成學生成績的基本信息的錄入、刪除、更新等功能。在此模塊中定義了四個域名來進行學生的信息存儲。
4.4.3課程數(shù)據(jù)庫
課程數(shù)據(jù)庫利存儲了課程的信息:課程名、作者、出版社等 列名(中文)列名(英文)數(shù)據(jù)類型寬度小數(shù)點位數(shù)是否為空課程IDCourseDate8No課程名NameDate15No出版社PublisherDate20No作者ScoreDate18No備注RecordDate15No
課程模塊:
該模塊主要完成存儲課程的所有信息及錄入、刪除、更新等功能
與VB的連接
Visual Basic提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。Visual Basic 支持不同的關系數(shù)據(jù)庫管理系統(tǒng)并充分發(fā)揮每一個數(shù)據(jù)庫的特長。生成獨立應用或脫離服務器運行的服務以上的應用,Visual Basic連接數(shù)據(jù)庫的方式有兩種: ·通過使用Visual Basic的 DATA控件。
·通過使用由Visual Basic提供的專用的直接與數(shù)據(jù)庫相連的接口
ImgUndo.Picture = ImageDisable.ListImages(“Undo”).Picture End Sub Private Sub ImgUndoEnable()'有效“Undo”按鈕 ImgUndo.Enabled = True ImgUndo.Picture = ImageUp.ListImages(“Undo”).Picture End Sub Private Sub Check_ImgPaste()'設置粘貼按鈕
If Len(Clipboard.GetText)> 0 Then ImgPaste.Enabled = True ImgPaste.Picture = ImageUp.ListImages(“Paste”).Picture Else ImgPaste.Enabled = False ImgPaste.Picture = ImageDisable.ListImages(“Paste”).Picture End If End Sub Private Sub Check_ImgCutCopy()'設置剪切、復制按鈕 If Text1.SelLength > 0 Then ImgCut.Enabled = True ImgCut.Picture = ImageUp.ListImages(“Cut”).Picture
ImgCopy.Enabled = True ImgCopy.Picture = ImageUp.ListImages(“Copy”).Picture Else ImgCut.Enabled = False ImgCut.Picture = ImageDisable.ListImages(“Cut”).Picture ImgCopy.Enabled = False ImgCopy.Picture = ImageDisable.ListImages(“Copy”).Picture End If End Sub Private Sub BackColor_Click()CommonDialog1.ShowColor Text1.BackColor = CommonDialog1.Color End Sub Private Sub Box_Click()'顯停工具欄 If Box.Checked Then '將停顯工具欄 Box.Checked = False CoolBar1.Visible = False Else Box.Checked = True CoolBar1.Visible = True End If
Form_Resize '重新調(diào)整控件位置 End Sub Private Sub Close_Click()Dim FileNum As Integer
If Len(FileName)> 0 Then '有輸入文件名
FileNum = FreeFile()'獲得可用文件號
Open FileName For Output As FileNum '打開輸出文件 '如果無指定文件,則創(chuàng)建新文件 Print #FileNum, Text1.Text '輸出文本 Close FileNum '關閉文件 End If Text1.Text = “" FileName = ”“ End Sub Private Sub ComboSize_Click()Text1.FontSize = Val(ComboSize.Text)End Sub
Private Sub ComboFont_Click()Text1.FontName = ComboFont.Text End Sub Private Sub Copy_Click()Clipboard.SetText Text1.SelText '復制文本到剪裁板 End Sub Private Sub Cut_Click()Clipboard.SetText Text1.SelText '復制文本到剪裁板 Text1.SelText = ”“ '清選擇的文本 End Sub Private Sub DataTime_Click()Text1.SelText = Now End Sub Private Sub Delete_Click()Text1.SelText = ”“ '清選擇的文本 End Sub Private Sub Edit_Click()'當程序顯示“編輯”子菜單前,觸發(fā)該程序 If Text1.SelLength > 0 Then '文本框中有選中的文本 Cut.Enabled = True
Copy.Enabled = True Delete.Enabled = True Else Cut.Enabled = False Copy.Enabled = False Delete.Enabled = False End If
If Len(Clipboard.GetText())> 0 Then '剪裁板中有文本數(shù)據(jù) Paste.Enabled = True Else '沒有可粘貼的文本 Paste.Enabled = False End If End Sub Private Sub Exit_Click()Unload Me End Sub Private Sub FindText_KeyPress(KeyAscii As Integer)Dim BeginPos As Long
If KeyAscii = 13 Then BeginPos = InStr(1, Text1.Text, FindText.Text, vbTextCompare)If BeginPos > 0 Then Text1.SelStart = BeginPos1 ComboFont.AddItem Screen.Fonts(i)Next i End Sub Private Sub Form_Resize()Dim TextTop As Long
'修改工具條大小
CoolBar1.Top = Me.ScaleTop Me.ScaleLeft Text1.Width = Me.ScaleWidth If Me.ScaleHeight > CoolBar1.Height Then Text1.Height = Me.ScaleHeight” + FileName '修改標題顯示 End If End Sub Private Sub Paste_Click()Text1.SelText = Clipboard.GetText End Sub Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Label1 = “工具欄” End Sub Private Sub Picture1_Resize()If Picture1.Width > Label1.Left Then Label1.Width = Picture1.ScaleWidth" + FileName '修改標題顯示 ImgUndoDisable End If End Sub Private Sub Text1_Change()If Not ImgUndo.Enabled Then '使“Undo”按鈕可用 ImgUndoEnable
End If UndoString = UndoNew UndoNew = Text1 End Sub Private Sub Text1_Click()Check_ImgCutCopy End Sub Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)Check_ImgCutCopy End sub
也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡文件服務器,與其他網(wǎng)絡用戶共享數(shù)據(jù)庫。Access 是一種關系數(shù)據(jù)庫工具,關系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access 作為關系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)包中同時擁有桌面數(shù)據(jù)庫的便利和關系數(shù)據(jù)庫的強大功能。
二者的結合(DBA)
微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic 來訪問數(shù)據(jù)庫并對其進行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。
DATA 控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic程序之間架起了一座橋梁。我們可以設置DATA控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下,DATA控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)表建立一個dynaset-type(動態(tài)集合)類型的記錄集合。一個記錄集合是動態(tài)的也就意味著,當原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。DATA控件還提供了用來瀏覽不同記錄的各種跳轉按鈕。將DATA控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。