




已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
教材管理系統(tǒng)教材管理系統(tǒng) 指導教師簽字指導教師簽字 主主 任任 簽簽 字字 年 月 日 一、一、課題內容課題內容 1、教材管理系統(tǒng)發(fā)展的背景和現(xiàn)況 2、教材管理系統(tǒng)功能模塊的設計與介紹 3、教材管理系統(tǒng)的系統(tǒng)介紹和使用 二、二、課題任務要求課題任務要求 1、了解教材管理系統(tǒng)發(fā)展狀況和前景 2、教材管理系統(tǒng)的功能模塊的設計 3、教材管理系統(tǒng)的詳細設計 4、教材管理系統(tǒng)平臺的建設 目目 錄錄 第一章第一章 引言引言3 1.1 背景3 1.1.1教材管理系統(tǒng) 3 1.1.2信息管理系統(tǒng) 3 1.2 開發(fā)教材管理系統(tǒng)的目的和原則5 1.3 開發(fā)環(huán)境介紹.6 1.3.1 開發(fā)平臺.6 1.3.2 數(shù)據(jù)庫查詢語言SQL8 1.3.3 數(shù)據(jù)庫設計工具ACCESS 數(shù)據(jù)庫管理系統(tǒng).9 第二章第二章 系統(tǒng)設計系統(tǒng)設計.11 2.1 系統(tǒng)分析.11 2.2 系統(tǒng)流程和操作方式設計13 第三章第三章 系統(tǒng)界面設計系統(tǒng)界面設計14 3.1 系統(tǒng)界面設計.14 3.2 系統(tǒng)的界面及窗體16 3.2.1 下面是系統(tǒng)的主要窗體16 3.2.2 界面多文檔(MDI)frmDMI 的設計及代碼.17 第四章第四章 數(shù)據(jù)庫的設計數(shù)據(jù)庫的設計32 4.1 數(shù)據(jù)庫設計32 4.1.1 數(shù)據(jù)庫概念和發(fā)展32 4.1.2 數(shù)據(jù)庫模型及參照完整性.33 4.1.3 數(shù)據(jù)庫的建立與連接 34 4.2 數(shù)據(jù)庫查詢設計36 4.2.1 查詢功能簡介 36 4.2.2 查詢功能實現(xiàn)的相關技術 36 4.2.3 查詢功能的具體實現(xiàn) 38 4.3 系統(tǒng)測試與評價.40 總總 結結41 致致 謝謝.42 參考文獻參考文獻.43 第一章第一章 引言引言 1.11.1 背景背景 1.1.11.1.1教材管理系統(tǒng)教材管理系統(tǒng) 學校教材管理主要是由教材計劃制定、采購、入庫、發(fā)放、 記賬、結算等一系列工作所組成,該工作各院校都設有專門機 構負責該項工作,通常是教材科。由于學校中專業(yè)設置門類多, 各專業(yè)每期開設課程種類多其業(yè)務不僅涉及出版部門,而且要 面對全校各系、部的授課教師,各班級的學生,每期教材科涉 及管理的入出庫教材種類少則幾百多則幾千種,涉及教材冊數(shù) 少則幾千多則幾萬,涉及人員廣,工作量大,再者特別是近年 來,我國高等教育規(guī)模的不斷擴大,學校學生 人數(shù)迅速增加, 使教材管理工作更加繁重不堪。據(jù)調查,到目前為止,我國還 有許多學校甚至是一些重點院校的教材管理仍為手工管理方式, 這種現(xiàn)狀不但與現(xiàn)實學校教材管理的業(yè)務需求不相適應,并且 也與學校信息化建設的發(fā)展趨勢不相適應,因此,學校教材管 理人員目前迫切需要一套方便、高效的計算機化的管理信息系 統(tǒng)來代替他們繁瑣、低效的傳統(tǒng)手工管理方式,并最終實現(xiàn)教 材管理的全面自動化。 1.1.21.1.2信息管理系統(tǒng)信息管理系統(tǒng) (1) 、信息管理系統(tǒng)的簡介 教材管理系統(tǒng)屬于信息管理系統(tǒng)中的一個具體信息管理 類型,而所謂的管理信息系統(tǒng)也就是我們常說的 MIS(Management Information System)它是“由人、計算機 等組成的能進行信息的收集、傳送、儲存、加工、維護和使用 的系統(tǒng)。管理信息系統(tǒng)能實測企業(yè)的各種運行情況利用過去的 數(shù)據(jù)觀測未來;從企業(yè)全局出發(fā)輔助企業(yè)進行決策;利用信息 控制企業(yè)的行為;幫助企業(yè)實現(xiàn)其規(guī)劃目標。 ”在當今這個強 調管理、強調信息的時代,MIS 變得越來越普及。MIS 作為一 門新的學科,它跨越了多個領域,如:管理科學、系統(tǒng)科學、 運籌學、統(tǒng)計學以及計算機科學。在這些新興的學科基礎上發(fā) 展出一種信息收集和加工的方法,最終形成現(xiàn)在一個縱橫交織 的系統(tǒng)。本系統(tǒng)為單機版運行方式,對于硬件的要求比較小, 能夠在任何運行圖形化 Windows 視窗操作系統(tǒng)上運行。另外需 要說明的一點是,限于技術的原因,目前國內還沒有出現(xiàn)更高 級的管理模型開發(fā)方法,所以本系統(tǒng)采用廣泛使用的 MIS 系統(tǒng)。 (2) 、信息管理系統(tǒng)的概況和發(fā)展方向 第一階段:統(tǒng)計系統(tǒng),所研究的內容是數(shù)量數(shù)據(jù)間表面的 規(guī)律,它可以把數(shù)據(jù)分成較相關和較不相關的組,然后把數(shù)據(jù) 轉換為信息。 第二階段:數(shù)據(jù)更新系統(tǒng)。 第三階段:狀態(tài)報告系統(tǒng),它可以分為生產狀態(tài)報告、服 務狀態(tài)報告和研究狀態(tài)報 告等系統(tǒng)。 第四階段:決策支持階段,它是用來輔助決策的信息系統(tǒng), 該系統(tǒng)可以計劃、分析方案,審查解答和求解的誤差。它具有 較好的人機對話方式,可以和不怎么熟悉計算機的管理人員通 話。它一般包括一些模型用以產生決策信息,但不強調全面的 管理功能。 (3) 、 管理信息系統(tǒng)的發(fā)展方向 從國際技術發(fā)展來看,20 世紀 90 年代出現(xiàn)了幾種全新的管理技 術: BPR企業(yè)過程重組;IDDS智能化決策支持系統(tǒng);Lean Production 精良生產;Agile Manufacture靈捷制造。 相應的 MIS 開發(fā)技術在 20 世紀 90 年代也有了新的發(fā)展: 信息綜合集成和 Internet/Intranet。 1.21.2 開發(fā)教材管理系統(tǒng)的目的和原則開發(fā)教材管理系統(tǒng)的目的和原則 開發(fā)教材管理系統(tǒng)的目的就是充分利用計算機和現(xiàn)代辦公 軟件,擺脫傳統(tǒng)辦公工具,用計算機實現(xiàn)集中方便的管理工作, 把學校教材科的工作人員從繁重的體力勞動中解脫出來以達到 提高工作效率和質量,最終實現(xiàn)教材管理的全面自動化為和現(xiàn) 代化。要實現(xiàn)這個目標在開發(fā)過程中應遵循以下幾條原則: 1.、從實際出發(fā),總結借鑒吸收相結合的原則 參照并保留了其他軟件的征訂、采購、發(fā)行、結算等常規(guī) 應用部分,改變了原來庫連接方式,所有庫連接形成一個整體, 增強了智能化和自動化 程度。具有獨立的設計構思,方便、 快捷、簡單、實用。 2、編制和實施操作的現(xiàn)實性 . 該教材管理系統(tǒng)是我們在 Windows 操作平臺下開發(fā)的初級 版本,既考慮了與舊的方法的銜接,又注意了新情況新特點, 注意承上啟下,運算規(guī)則(規(guī)律)更具科學性。在編制過程中, 我們既考慮了與現(xiàn)實舊軟件和手工操作的銜接,又注意了新方 法的應用,增加了可操作性,現(xiàn)實、可靠、 即時使用。逐步成 熟后,可隨著技術條件的改進和提高,隨時升級可見的用戶界 面要求系統(tǒng)的大部分功能在菜單或工具欄級別上通過簡單 的鼠標點擊完成 3、教材管理的框架,應以科學嚴謹,各種新思想,新方 法構筑完備為原則 既要保證教材管理系統(tǒng)的科學性、完整性、系統(tǒng)性,又注 意到教材管理的靈活性和可操作性。同時又較好的解決了教材 管理工作的部分難點問題,比如多價書的征訂采購發(fā)行,到貨 前書目替換,大量的錄入工作,查找書目難以操作等等。 4、統(tǒng)要有簡單可得的幫助 整的工具欄、狀態(tài)欄和系統(tǒng)幫助。 1.31.3 開發(fā)環(huán)境介紹開發(fā)環(huán)境介紹 使用 Visual Basic 6.0 作為管理系統(tǒng)的開發(fā)平臺, ACCESS2000 用于數(shù)據(jù)源的開發(fā);使用 ODBC(開放式數(shù)據(jù)庫連接) 進行對數(shù)據(jù)源的連接,SQL 結構化查詢語言用于實現(xiàn)查詢功能。 之所以采用 vb 作為開發(fā)平臺主要是考慮到對此種語言的熟悉性 以及使用 vb 能夠在較短的時間內給用戶提供友好的界面和完善 的功能,縮短了開發(fā)周期。而數(shù)據(jù)源的開發(fā)最初是想使用 SQL Server 企業(yè)管理器進行的,但是考慮到 ACCESS 的簡單易用性, 最終還是采用了 ACCESS2000。 1 1.3.1.3.1 開發(fā)平臺開發(fā)平臺 用 Visual Basic 60 作為數(shù)據(jù)庫開發(fā)平臺,3.0 版以后的 Visual Basic 具有數(shù)據(jù)庫連接和數(shù)據(jù)處理功能,因此完全有資 格作為數(shù)據(jù)庫應用程序的開發(fā)環(huán)境。Microsoft 公司把許多新的 數(shù)據(jù)訪問功能加到 Visual Basic 中,使得該產品成為桌面數(shù)據(jù) 庫市場中 Access、FoxPro 及 Paradox for Windows 的直接競爭 者。與普通的數(shù)據(jù)庫系統(tǒng)相比,用 Visual Basic 作為數(shù)據(jù)庫開 發(fā)平臺有以下優(yōu)點: (1)、簡單性 Visual Basic 提供了數(shù)據(jù)控件,利用該控件,用戶只要編 寫少量的代碼甚至不編寫任何代碼就可以訪問數(shù)據(jù)庫,對數(shù)據(jù) 庫進行瀏覽。 (2)、靈活性 Visual Basic 不像一般的數(shù)據(jù)庫(如 Access)那樣局限于特 定的應用程序結構,也不需要用某些指令對當前打開的數(shù)據(jù)庫 進行操作,因而比較靈活。 (3)、可擴充性 Visual Basic 是一種可以擴充的語言,其中包括在數(shù)據(jù)庫 應用方面的擴充。在 Visual Basic 中,可以使用 ActiveX 控件 (以前版本中稱為 VBX 或 OLE 控件),這些控件可以由 Microsoft 公司提供,也可以由第三方開發(fā)者提供。有了這些控件,可以 很容易地在 Visual Basic 中增加新功能,擴充 Visual Basic 數(shù)據(jù)存取控制的指令系統(tǒng)。 用 Visual Basic 6.0 作為數(shù)據(jù)庫 前端,數(shù)據(jù)庫前端是一個計算機應用程序,用該程序可以選擇 數(shù)據(jù)庫中的數(shù)據(jù)項,并把所選擇的數(shù)據(jù)項按用戶的要求顯示出 來。數(shù)據(jù)庫系統(tǒng)本身被稱為后端,后端數(shù)據(jù)庫通常是一個關系 表的集合。之所以選擇 Visual Basic 作為開發(fā)數(shù)據(jù)庫前端應用 程序的工具,主要是因為 Visual Basic 可以和多種數(shù)據(jù)庫連接。 也就是說,目前較為流行的大多數(shù)數(shù)據(jù)庫都可以與 Visual Basic 連接,因而可以用 Visual Basic 開發(fā)相應的前端應用程 序。Visual Basic 通過不同的方式與各種數(shù)據(jù)庫進行連接,主 要有三種方式,即 Access 數(shù)庫引擎、MicrosoftODBC 驅動程序、 第三方 ODBC 驅動程序。 AAccess 數(shù)據(jù)庫引擎 Access 是 Visual Basic 的“內部數(shù)據(jù)庫”,即在 Visual Basic 中可以直接建立 Access 數(shù)據(jù)庫。同時,通過 Access 數(shù) 據(jù)庫引擎,還可以使用下列數(shù)據(jù)庫: Btrieve(.DAT) dBASE(.DBF/.NDX) Foxpro(.DbF/.CDX/.NDX) Paradox(.DB, .PX) BMicrosoft ODBC 通過Microsoft ODBC 驅動程序,可以使用下列數(shù)據(jù)庫: Microsoft SQL Server Oracle Sybase SQL Server Excel(.XLS) Text(.TXT) Access(.MDB) Btrieve DBASE FoxPro Paradox 上面所列的數(shù)據(jù)庫中,除前三種外,其余數(shù)據(jù)庫均包含在一 套 Microsoft ODBC 桌面數(shù)據(jù)庫驅動程序及 Microsoft Query 中。 1.3.21.3.2 數(shù)據(jù)庫查詢語言數(shù)據(jù)庫查詢語言SQLSQL Visual Basic是數(shù)據(jù)庫開發(fā)的主要開發(fā)工具,同時為了實 現(xiàn)查詢的功能以及系統(tǒng)的一些相關功能,SQL語言的使用也是必 不可少的,SQL語言即結構查詢語句,SQL語言之所以能夠為用 戶和業(yè)界所接受,成為國際標準,是因為它是一個綜合的、通 用的、 功能極強,同時簡潔易學。SQL語言集數(shù)據(jù)查詢(data query)、 數(shù)據(jù)操縱(data manipulation) 、數(shù)據(jù)定義(data definition) 和數(shù)據(jù)控制(data control) 功能于一體,充分 體現(xiàn)了關系數(shù)據(jù)語言的特點和優(yōu)點。 其主要特點包括: ()綜合統(tǒng)一 主要功能是通過數(shù)據(jù)庫支持的數(shù)據(jù)語言來實現(xiàn)的。 非關系模型(層次模型, 網狀模型)的數(shù)據(jù)語言一般都 分為模式數(shù)據(jù)定義語言(schema data definition language , 簡稱模式DDL),外模式數(shù)據(jù)定義語言(subschema data definition language,簡稱外模式DDL)與數(shù)據(jù)存儲有關的描述 語言(data storage de-scription language,簡稱DSDL)以及數(shù) 據(jù)操縱語言(data manipualtion language,簡稱DML) ,分別 于定義模式, 外模式,內模式和進行數(shù)據(jù)的存取與處置。當用 戶數(shù)據(jù)庫投入運行后,如果需要修改模式,必須停止現(xiàn)有數(shù)據(jù) 庫的運行,轉儲數(shù)據(jù),修改模式并編譯后再重裝數(shù)據(jù)庫,因此 很麻煩。 ()高度非過程化 非關系數(shù)據(jù)模型的數(shù)據(jù)操縱語言是面向過程的語言,有 其完成某項請求,必須指定存取路徑。而用SQL語言進行數(shù)據(jù) 操作,用戶只需提出“做什么”,而不必指明“怎么做”,因 此用戶無需了解存取路徑,存取路徑的選擇以及SQL語句的操作 過程均由系統(tǒng)自動完成。這不但大大減輕了用戶負擔,而且有 利于提高數(shù)據(jù)獨立性。 ()面向集合的操作方式 非關系數(shù)據(jù)模型采用的是面向記錄的操作方式,任何一 個操作其對象都是一條記錄。例如,查詢所有平均成績在 分以上的學生姓名,用戶必須說明完成該請示的具體處理過程, 即如何用循環(huán)結構按照某條路徑一條一條地把滿足條件的學生 記錄讀出來。而SQL語言采用集合操作方式,不僅查找結果可以 是元組的集合,而且一次插入,刪除,更新操作的對象也可以 是元組的集合。 (4)語言簡潔,易學易用 SQL 語言功能極強,但由于設計巧妙,語言十分簡潔,完 成數(shù)據(jù)定義,數(shù)據(jù)操縱,數(shù)據(jù)控制的核心功能只用了個動詞: CREATE、DROP、SELECT、ENSERT、UP- DATE、DELETE、GRANT、REVOKE、ALTER.而且SQL語言語法簡單, 接近英語口語,因此容易學習,容易使用。 1.3.31.3.3 數(shù)據(jù)庫設計工具數(shù)據(jù)庫設計工具ACCESSACCESS 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng) ACCESS 數(shù)據(jù)庫是個人、部門及企業(yè)管理數(shù)據(jù)的最易操作的 新一代數(shù)據(jù)庫。它兼容傳統(tǒng)的數(shù)據(jù)庫,同時進一步增強了 web 支 持。可以非常方便地跨平臺作業(yè)和共享數(shù)據(jù)。 ACCESS 具有一個數(shù)據(jù)庫管理系統(tǒng)所應具有的功能。Access 2000 是一個面向對象的采用時間驅動機制的新型關系數(shù)據(jù)庫管 理系統(tǒng)。它可以通過 ODBC 與其他數(shù)據(jù)庫相連, 實現(xiàn)數(shù)據(jù)交換與 共享數(shù)據(jù)庫是進行信息管理的基礎。利用計算機進行信息管理首 先要建立數(shù)據(jù)庫。ACCESS 2000 可以用作企業(yè)級后端數(shù)據(jù)庫(如 Microsoft SQL Server)的前臺客戶端。ACCESS 有兩種使用方 式:作為創(chuàng)建個人或部門數(shù)據(jù)庫的獨立應用程序,或作為更強健、 更具擴展性的后端數(shù)據(jù)庫的接口客戶端。不論選用了何種后端數(shù) 據(jù)源,最終用戶都將得到使用流行的桌面數(shù)據(jù)庫客戶端時易于使 用的好處。 1、 信息查找和使用更容易的特征 (1)將數(shù)據(jù)庫轉換成以前的 ACCESS 版本,ACCESS 用戶首先可 以將數(shù)據(jù)庫保存為以前的 ACCESS 版本,是不同版本的軟件用戶 共享數(shù)據(jù)更加方便。 (2)對數(shù)據(jù)庫窗口進行更改,以便容納在 ACCESS 2000 種現(xiàn)實 的新對象,這樣可以提高可用性,并使其同整個 OFFICE 2000 所使用的新用戶界面相一致。 (3)名稱自動更正特征能夠自動解決用戶重命名數(shù)據(jù)庫對象時 所產生的不匹配問題。例如,當用戶重命名表中的字段時,更 改將被自動傳遞到相關的對象(例如查詢和窗體),以便用戶可 以繼續(xù)使用應用程序。 (4)條件格式支持負數(shù)和正數(shù),并可以將表示成小于、大于、 介于和等于的值。此外,用戶還可以根據(jù)用戶定義函數(shù)設置格 式。用戶可以根據(jù)值設置顏色、背景、樣式。 (5)子數(shù)據(jù)表提供數(shù)據(jù)綱要,以在同一窗口中查看和編輯所有 相關數(shù)據(jù)。 (6)用戶可以將數(shù)據(jù)從 Microsoft Access 導出到 Microsoft Excel,方法是將 Access 對象(表格、查詢等)從數(shù)據(jù)庫容器 拖放到 Microsoft Excel。這提供了一種將數(shù)據(jù)迅速導出到 Excel 進行進一步分析的快速方法。 (7)直接從“窗體”視圖更改字段(例如,顏色或字體)更方 便了。 (8)Access 具有打印“關系”窗口的視覺圖表的能力,可讓用 戶更加方便地查看數(shù)據(jù)庫的結構。 (9)控件分組特性允許用戶將控件作為單個單元進行分組,使 窗體的設計更容易。 (10)在關閉文件時,如果占用磁盤空間太多,Access 2000 會 自動壓縮數(shù)據(jù)庫。這可以確保使 Access 數(shù)據(jù)庫盡可能地小。 2、 具有 Web 特性的信息共享特性 3、 豐富的信息管理分析工具 (1)Microsoft Access 2000 支持 OLE DB,允許用戶將 Access 界面的易用性和企業(yè)后端數(shù)據(jù)庫(例如,Microsoft SQL Server)的可伸縮性結合起來。 (2)Access 界面可以創(chuàng)建一種新的文本類型(.adp) ,該文件類 型可直接連接到 Microsoft 數(shù)據(jù)庫引擎(MSDE)和 Office 中與 SQL 服務器兼容的數(shù)據(jù)存儲區(qū)、SQL Server6.5 或 SQL Server7.0。這使用戶可以方便地利用 Access 中熟悉的界面來 創(chuàng)建真正的客戶端服務器應用程序。 (3)(新的設計工具允許用戶在處理 Microsoft Access 項目文 件( .adp)時,方便地創(chuàng)建和管理服務器端的對象,其中包括 表格、視圖、存儲的過程和數(shù)據(jù)庫圖表。 (4)Microsoft Access 2000 允許用戶執(zhí)行和管理普通 Microsoft SQL Server7.0 管理任務,例如復制、備份與恢復、 以及完全性。 第二章第二章 系統(tǒng)設計系統(tǒng)設計 2.12.1 系統(tǒng)分析系統(tǒng)分析 系統(tǒng)分析的任務是明確教材數(shù)據(jù)庫管理系統(tǒng)開發(fā)的目的、系統(tǒng) 應用的功能等,主要有以下步驟: 1. 軟件結構分析 對于大型系統(tǒng)的設計,通常分為兩個階段:結構設計和過程設 計。 結構設計:確定系統(tǒng)由哪些模塊組成,以及這些模塊之間的相 互關系。 過程設計:確定每個模塊的處理過程 。其中,結構設計是總 體設計階段的任務,而過程設計則是詳細設計階段的任務。這里 只是一個小型的數(shù)據(jù)庫管理系統(tǒng),只分析構成它們最基本的成分 以及所有這些成分之間的相互關系。結構分析就是系統(tǒng)分析人員 對完成任務的每一個工序進行分析的過程。 這里只畫出其結構的業(yè)務流程與數(shù)據(jù)流成圖,如圖 2-1, 2- 2 教材預訂 教材入庫 教材發(fā)放 教材賬務 預訂查詢 入庫查詢 庫存查詢 帳務查詢 圖 2-1 業(yè)務流程圖 圖 2-2 數(shù)據(jù)流程圖 系統(tǒng)開發(fā)的過程首先是要確定需要建立的表格以及視圖,即 首先完成數(shù)據(jù)庫的設計,這個過程主要是通過 Access 的使用完成 的;其次,就是進行界面的設計,這個過程是在 VB 中完成的,它 是系統(tǒng)開發(fā)中比較重要的一步,系統(tǒng)界面在用戶對軟件的評價中 占有很大的比重,影響到本次開發(fā)的成功與否,所以在后面將有 專門一部分論述界面設計。最后就是功能編碼功能的實現(xiàn)了,作 為一個程序員來說,這一部分的工作相對簡單,需要注意的主要 是 SQL 語言在程序中的嵌套以及部分 API 函數(shù)的調用。 2. 工作量分析 對工作量的分析,是以分析傳統(tǒng)教材管理系統(tǒng)的各種工作量為 基礎的。分析包括輸入量分析,輸出量分析,文檔結構,程序編 制,調試狀況分析,一般有: (1)問題分析與綜合 (2)數(shù)據(jù)庫組織與結構的分析 (3)文檔結構分析與編制 (4)子系統(tǒng)處理過程分析 (5)書目記錄的種類分析 (6)與用戶充分交流的分析 (7)輸出產品的種類格式分 (8)程序編制、調試狀況分析 (9)軟件測試對象的分析 2.22.2 系統(tǒng)流程和操作方式設計系統(tǒng)流程和操作方式設計 教材管理系統(tǒng)的工作流程建立在傳統(tǒng)手工工作流程的基礎上, 但又不能完全等同于手工工作流程。因為教材管理系統(tǒng)畢竟不同 于傳統(tǒng)手工作業(yè),從效率上來說,前者也高于后者,前者只需要 少量的人工干預就能夠實現(xiàn)教材信息的集中管理。 首先,在流程安排上應盡量避免數(shù)據(jù)的重復輸入,實現(xiàn)從采 購到發(fā)放一次輸入的數(shù)據(jù)得到多次使用,以提高系統(tǒng)的工作效率。 這一步很大程度依賴于數(shù)據(jù)庫的設計。 其次,選擇合適的操作方式。計算機系統(tǒng)操作方式有兩種: 一種是聯(lián)機操作方式,即人機交互方式 ;另一種是脫機操作方式, 它是將事先設計好的一套操作程序以作業(yè)的形式提交給計算機, 由計算機依托幾批處理的方式完成這套操作,并將處理結果通過 系統(tǒng)打印輸出。本次設計的教材管理系統(tǒng)屬于第一種操作方式, 需要用戶輸入信息完成操作。之所以采用這種方式,主要是考慮 到此數(shù)據(jù)庫管理系統(tǒng)的實時性需求,因為數(shù)據(jù)庫隨時可能都需要 得到改變。 第三章第三章 系統(tǒng)界面設計系統(tǒng)界面設計 3.13.1 系統(tǒng)界面設計系統(tǒng)界面設計 1、 為了設計出符合一般標準又具有特色的界面,系統(tǒng)開發(fā)時要 遵循以下開發(fā)原則: (1) 保證界面設計的風格具有一致性。 (2) 界面設計時,控件的擺放要協(xié)調和勻稱。 (3) 常用操作(如教材管理、查詢 、打印等操作)應建立 快捷方式,方便管理員日常操作。 (4) 提供信息反饋,對一些不常見的操作和至關重要的操作, 系統(tǒng)應該能反饋信息。 (5) 提供錯誤處理信息,在出現(xiàn)錯誤時,系統(tǒng)應該能檢測出 錯誤并提供錯誤處理的功能;錯誤出現(xiàn)后,系統(tǒng)的狀態(tài) 不發(fā)生變化,或者系統(tǒng)要提供錯誤恢復的向導。 (6)為了方便管理員的管理應設置工具欄和狀態(tài)欄。 系統(tǒng)的總體設計,預訂需要設計幾個具有主要功能的窗 體,其中系統(tǒng)主要功能界面是最主要的,是設計的重點。該界 面上包括了系統(tǒng)的功能查詢以及觸發(fā)其他單項功能界面的快捷 方式,如教材管理、查詢、打印與報表等。 2、系統(tǒng)結構 本系統(tǒng)是以教材管理業(yè)務為原型設計開發(fā)的,教材科的日 常業(yè)務大體上有如下幾項: (1) 教材預訂。教材的預訂工作基本上是由系、部來完成。 教材科將教材征訂通知下發(fā)到各系、(輪流傳閱), 各系從中選訂所開課程的教材,填寫預訂單,經系、 部匯總報教材科。教材科匯總報教務處審批后,編制 填寫正式訂單寄發(fā)到各出版社。 (2) 教材入庫業(yè)務。出版社按訂單如期如數(shù)發(fā)書,教材科 查收入庫。 (3) 教材發(fā)放。按預訂數(shù)量發(fā)放專業(yè)和年級用書。通常是 以系、班級為單位領進行領書。 (4) 查詢,這項工作包括四項內容,其一是預訂查詢及時 了解各系教材的訂購情況;再就是入庫查詢及時掌握 入庫情況;第三是庫存查詢情況;第四是帳務查詢, 主要記錄學生、班級、教師領教材的詳細情況。 (5) 打印與報表,主要用于訂書、購書、發(fā)書清單的打印。 (6) 系統(tǒng)管理主要包括用戶、密碼的更改,學生信息管理 和數(shù)據(jù)庫的維護。 (7) 選項和系統(tǒng)幫助能使用戶快速得到幫助。 3、教材管理系統(tǒng)功能模塊設計圖 根據(jù)上述我們對教材管理業(yè)務流程和數(shù)據(jù)流程的調查分析, 并根據(jù)模塊劃分原則,同時考慮到用戶對新系統(tǒng)的易學易用性, 我們將新系統(tǒng)劃分為如 3-1 圖所示的功能模塊結構: 圖 3-1 功能模塊結構 3.23.2 系統(tǒng)的界面及窗體系統(tǒng)的界面及窗體 3.2.13.2.1 下面是系統(tǒng)的主要窗體下面是系統(tǒng)的主要窗體 圖圖 3-23-2 登錄窗口登錄窗口 圖圖 3-33-3 系統(tǒng)界面系統(tǒng)界面 當系統(tǒng)管理員想進入系統(tǒng)時,在登錄窗體(圖 3-2)中輸入用戶 名和密碼,點擊確定按鈕,就可進入教材管理系統(tǒng)的主窗體界面 (圖 3-3),管理員就可以進行如下的工作: (1) 通過訂書單來確定所需要訂的書。 (2)把訂書單和庫存做比較得出還需要訂閱的書的名稱、數(shù)量 等。 (3)把所需要訂閱書導出到訂書表,通過訂書表向各出版社訂 書。 (4)等所需要的書到了,把它們進入庫存,更新庫存數(shù)據(jù)庫。 (5)比較新庫存和訂書單,導出各學生,各班級,各系的發(fā) 報表。 (6)按照發(fā)書報表進行發(fā)書,更新庫存,并備份原來的庫存, 比較一下是否有錯。 (7)按照學生的發(fā)書報表發(fā)書,并把各學生的領書清單打印發(fā) 給學生。 用戶界面是開發(fā)應用程序的最主要的組成部分,用戶界面設 計的優(yōu)劣決定了應用程序的 易用性、易操作性,基于 windows 應用程序的用戶界面的樣式主要有兩大類:單文檔界面(SDI) 和多文檔界面(MDI) 。采用單文檔還是多文檔要看應用程序的 目的如本例就是用的多文檔(MDI)的樣式,因為一個處理教材 管理的用戶很可能會同時進行幾種操作,這樣用戶就可以在不 同的窗口進行切換操作。 3.2.2 界面多文檔(界面多文檔(MDIMDI)frmDMIfrmDMI 的設計及代碼的設計及代碼 1、frmDMI 窗體是系統(tǒng)的主窗體(圖 3-3) ,這里是用戶 最常用的部分其代碼為 Private Declare Function GetMenu Lib “user32“ (ByVal hwnd As Long) As Long Private Declare Function GetSubMenu Lib “user32“ (ByVal hMenu As Long, ByVal nPos As Long) As Long Private Declare Function SetMenuItemBitmaps Lib “user32“ (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long Const MF_BYPOSITION = “ Jet OLEDB:Database Password=*;“ db.Open strConn Set adoPrimaryRS = New Recordset adoPrimaryRS.Open “select * from xsxxb Order by 學 號“, db, adOpenStatic, adLockOptimistic Set grdDataGrid.DataSource = adoPrimaryRS mbDataChanged = False End Sub Private Sub Form_Resize() On Error Resume Next 當窗體調整時會調整網格 grdDataGrid.Height = Me.ScaleHeight - 30 - picButtons.Height - picStatBox.Height lblStatus.Width = Me.Width - 1500 cmdNext.Left = lblStatus.Width + 700 cmdLast.Left = cmdNext.Left + 340 End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If mbEditFlag Or mbAddNewFlag Then Exit Sub Select Case KeyCode Case vbKeyEscape cmdclose_Click Case vbKeyEnd cmdlast_Click Case vbKeyHome cmdfirst_Click Case vbKeyUp, vbKeyPageUp If Shift = vbCtrlMask Then cmdfirst_Click Else cmdPrevious_Click End If Case vbKeyDown, vbKeyPageDown If Shift = vbCtrlMask Then cmdlast_Click Else cmdnext_Click End If End Select End Sub Private Sub Form_Unload(Cancel As Integer) Screen.MousePointer = vbDefault End Sub Private Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 為這個 recordset 顯示當前記錄位置 lblStatus.Caption = “第“ & CStr(adoPrimaryRS.AbsolutePosition) & “條記錄“ lblStatus.ForeColor = &HFF End Sub te Sub adoPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 驗證代碼置于此處 下列動作發(fā)生時該事件被調用 Dim bCancel As Boolean Select Case adReason Case adRsnAddNew Case adRsnClose Case adRsnDelete Case adRsnFirstChange Case adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndoDelete Case adRsnUndoUpdate Case adRsnUpdate End Select If bCancel Then adStatus = adStatusCancel End Sub Sub cmdadd_Click() On Error GoTo AddErr adoPrimaryRS.MoveLast adoPrimaryRS.AddNew grdDataGrid.SetFocus Exit Sub AddErr: MsgBox Err.Description End Sub Private Sub cmdDelete_Click() On Error GoTo DeleteErr With adoPrimaryRS .Delete .MoveNext If .EOF Then .MoveLast End With Exit Sub DeleteErr: MsgBox Err.Description End Sub Private Sub cmdRefresh_Click() 只有多用戶應用程序需要 On Error GoTo RefreshErr Set grdDataGrid.DataSource = Nothing adoPrimaryRS.Requery Set grdDataGrid.DataSource = adoPrimaryRS Exit Sub RefreshErr: MsgBox Err.Description End Sub Private Sub cmdEdit_Click() On Error GoTo EditErr lblStatus.Caption = “編輯記錄“ mbEditFlag = True SetButtons False Exit Sub EditErr: MsgBox Err.Description End Sub Private Sub cmdcancel_Click() On Error Resume Next SetButtons True mbEditFlag = False mbAddNewFlag = False adoPrimaryRS.CancelUpdate If mvBookMark 0 Then adoPrimaryRS.Bookmark = mvBookMark Else adoPrimaryRS.MoveFirst End If mbDataChanged = False End Sub Private Sub cmdupdate_Click() On Error GoTo UpdateErr adoPrimaryRS.UpdateBatch adAffectAll If mbAddNewFlag Then adoPrimaryRS.MoveLast 移到新記錄 End If mbEditFlag = False mbAddNewFlag = False SetButtons True mbDataChanged = False Exit Sub UpdateErr: MsgBox Err.Description End Sub Private Sub cmdclose_Click() Unload Me End Sub Private Sub cmdfirst_Click() On Error GoTo GoFirstError adoPrimaryRS.MoveFirst mbDataChanged = False Exit Sub tError: MsgBox Err.Description End Sub Private Sub cmdlast_Click() On Error GoTo GoLastError rimaryRS.MoveLast mbDataChanged = False Exit Sub tError: MsgBox Err.Description End Sub Private Sub cmdnext_Click() On Error GoTo GoNextError If Not adoPrimaryRS.EOF Then adoPrimaryRS.MoveNext If adoPrimaryRS.EOF And adoPrimaryRS.RecordCount 0 Then Beep 已到最后返回 adoPrimaryRS.MoveLast End If 顯示當前記錄 mbDataChanged = False Exit Sub GoNextError: MsgBox Err.Description End Sub Private Sub cmdPrevious_Click() On Error GoTo GoPrevError If Not adoPrimaryRS.BOF Then adoPrimaryRS.MovePrevious If adoPrimaryRS.BOF And adoPrimaryRS.RecordCount 0 Then Beep 已到最后返回 adoPrimaryRS.MoveFirst End If 顯示當前記錄 mbDataChanged = False Exit Sub GoPrevError: MsgBox Err.Description End Sub Private Sub SetButtons(bVal As Boolean) cmdAdd.Visible = bVal cmdEdit.Visible = bVal cmdUpdate.Visible = Not bVal cmdCancel.Visible = Not bVal cmdDelete.Visible = bVal cmdClose.Visible = bVal cmdRefresh.Visible = bVal cmdNext.Enabled = bVal cmdFirst.Enabled = bVal cmdLast.Enabled = bVal cmdPrevious.Enabled = bVal End Sub 3、 密碼更改-通過用戶對自己的密碼進行修改如圖 3-6 圖 3-6 其代碼如下: Private Sub cmdOk_Click() Set DbRs = New ADODB.Recordset If txtSecond.Text 0 Then recordset5.MoveFirst While Not recordset5.EOF If recordset5.Fields(“班級“).Value = cbbxclass.Text Then num = num + 1 End If recordset5.MoveNext Wend End If txtnum.Text = num End Sub(詳細的代碼見源程序) 6、查詢 查詢是本系統(tǒng)的重點部分之一,系統(tǒng)功能的強大與否與數(shù) 據(jù)庫的的查詢有密切的關系如圖 3-10、3-11 圖 3-10 圖 3-11 這里的查詢條件:發(fā)票號碼、書名、入書日期、經手人、選 擇那個字段就可以對那個字段進行查詢,可以復合查詢。 以上只是對多文檔(MDI)的部分窗體的說明詳細請參見 “系統(tǒng)幫助”部分 第四章第四章 數(shù)據(jù)庫的設計數(shù)據(jù)庫的設計 4.14.1 數(shù)據(jù)庫設計數(shù)據(jù)庫設計 數(shù)據(jù)庫設計的主要任務是在 SBMS(database management system)的支持下,按照應用的要求,數(shù)據(jù)結構的好壞將直接影響 到系統(tǒng)的效率以及實現(xiàn)的效果。好的數(shù)據(jù)庫結構會減少數(shù)據(jù)庫的 存儲量、冗余度,數(shù)據(jù)的完整性和一致性比較高,系統(tǒng)具有較快 的響應速度,簡化基于數(shù)據(jù)庫的應用程序的實現(xiàn)方法等。 4.1.14.1.1 數(shù)據(jù)庫概念和發(fā)展數(shù)據(jù)庫概念和發(fā)展 數(shù)據(jù)庫是存儲在計算機內、有組織的、可共享的數(shù)據(jù)集合, 是許多應用軟件的核心。數(shù)據(jù)庫是專指使用管理系統(tǒng)及其類似軟 件建立起來的并由數(shù)據(jù)庫管理系統(tǒng)及類似軟件所能存取和維護的 數(shù)據(jù)及數(shù)據(jù)間邏輯關系的集合體 眾所周知,數(shù)據(jù)庫系統(tǒng)不是在計算機產生的同時就出現(xiàn)的, 而是隨著計算機技術的不斷發(fā)展,在特定的歷史時期、特定的需 求環(huán)境下出現(xiàn)的。人類在 1946 年發(fā)明了世界上的第一臺計算機到 20 世紀 60 年代這漫長的 20 年里,計算機操作系統(tǒng)還主要局限于 文件的操作,同樣,對數(shù)據(jù)的管理也主要是通過文件系統(tǒng)來實現(xiàn)。 進行計算所需要的各種數(shù)據(jù)存放在各自的文件里面。當要使用這 些數(shù)據(jù)的時候,將文件打開,計算機操作系統(tǒng)中的文件系統(tǒng)一般 不支持對文件的并發(fā)訪問。而在現(xiàn)代計算機系統(tǒng)中,為了充分發(fā) 揮計算機系統(tǒng)的資源使用效率,一般都允許多個程序“同時”運 行,即并發(fā)性。對數(shù)據(jù)庫系統(tǒng)提出了新的要求。 七十年代初,E.F.Codd 在總結前面的層次、網狀數(shù)據(jù)庫優(yōu)缺 點的基礎上,提出了關系數(shù)據(jù)模型的概念。他提出了關系代數(shù)和 關系演算。整個七十年代,關系數(shù)據(jù)庫系統(tǒng)無論從理論上還是實 踐上都取得了豐碩的成果。在理論上,確立了完整的關系模型理 論、數(shù)據(jù)依賴理論和關系數(shù)據(jù)庫的設計理論等,這些關系數(shù)據(jù)庫; 在實踐上,世界上出現(xiàn)了很多著名的關系數(shù)據(jù)庫系統(tǒng),比較著名 的如 System R,INGRES,Oracle 等。 進入二十世紀八十年代之后,計算機硬件技術有了飛速的提 高。計算機技術的提高促使計算機應用不斷深入,產生了許多新 的應用領域,例如計算機輔助設計、計算機輔助制造、計算機輔 助教學、辦公自動化、智能信息處理、決策支持等。這些新的領 域對數(shù)據(jù)庫系統(tǒng)提出了新的要求。但是由于應用的多元化,不能 設計出一個統(tǒng)一的數(shù)據(jù)模型來表示這些新型的數(shù)據(jù)及其相互關系, 因而出現(xiàn)了百家爭鳴的局面,產生了演繹數(shù)據(jù)庫、面向對象數(shù)據(jù) 庫、分布式數(shù)據(jù)庫、工程數(shù)據(jù)庫、時態(tài)數(shù)據(jù)庫、模糊數(shù)據(jù)庫等新 型數(shù)據(jù)庫的研究和應用。 不過到目前為止,在世界范圍內得到主流應用的還是經典的 關系數(shù)據(jù)庫系統(tǒng),比較知名的如 Sybase,Oracle,Informix,SQL Server,DB2 等。 4.1.24.1.2 數(shù)據(jù)庫模型及參照完整性數(shù)據(jù)庫模型及參照完整性 數(shù)據(jù)庫模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎,通常由數(shù)據(jù)結構、 數(shù)據(jù)操作和完整性約束三部分組成。其中數(shù)據(jù)結構是所研究的對 象類型的集合,在數(shù)據(jù)庫系統(tǒng)中通常按照數(shù)據(jù)庫結構的類型來命 名數(shù)據(jù)模型,傳統(tǒng)的數(shù)據(jù)模型有層次模型,網狀模型和關系模型。 數(shù)據(jù)庫操作是對數(shù)據(jù)庫中的實例允許執(zhí)行的操作的集合。數(shù)據(jù)庫 主要有檢索和更新兩大類操作,數(shù)據(jù)庫的約束條件是完整性規(guī)則 的集合,保證數(shù)據(jù)完整性是對數(shù)據(jù)庫的一個很重要的要求,所謂 完整性就是數(shù)據(jù)的正確性、有效性和相容性。 按照數(shù)據(jù)模型的特點,可將傳統(tǒng)數(shù)據(jù)庫系統(tǒng)分為網狀數(shù)據(jù)庫, 層次數(shù)據(jù)庫和關系數(shù)據(jù)庫。 本系統(tǒng)的數(shù)據(jù)模型采用關系數(shù)據(jù)庫模型。關系模型有下列一 些優(yōu)點: 1數(shù)據(jù)結構簡單 關系模型中,所謂的數(shù)據(jù)模型不過是一些表格框架,其中 公共的屬性名指示著各表間的聯(lián)系。 2可以直接處理多對多的關系 由于用表格數(shù)據(jù)直接表示兩實體間的聯(lián)系,因此能夠直接 處理多對多的關系。 3能夠一次提供一個元組集合 每一個查找命令都可以找到滿足某種條件的所有記錄。 4數(shù)據(jù)獨立性高 關系模型中,用戶只指出他所要存放的數(shù)據(jù)類型、數(shù)據(jù)長 度等數(shù)據(jù)本身的特性,而不需要設計這些數(shù)據(jù)的物理存放,因 而數(shù)據(jù)獨立性較高。 數(shù)據(jù)庫領域的專家們進行了關系理論的研究,這些工作使 得關系理論趨于完善,而且也促進了其它軟件分支如軟件工程 的發(fā)展。 當然,關系模型也有它自己的缺點,主要有: (1) 查詢效率較低 關系模型的 DBMS 能夠提供較高的數(shù)據(jù)獨立性以及非過 程化的查詢語言,因此系統(tǒng)的負擔就很重,過去要程序員 完成的任務,例如尋找最佳的存取路徑等工作,現(xiàn)在全部 由系統(tǒng)包辦代替。這里面最影響效率的操作是進行笛卡爾 積運算和聯(lián)結運算。 (2) 關系模型的系統(tǒng)要求應用程序員和 DBA 應熟悉關系數(shù) 據(jù)庫設計理論 關系 DBMS 要求關系模式是規(guī)范化的形式,以簡化操作,避免 一系列的潛在問題。 因此用戶必須熟悉這些理論。這一點對普及應用有一定的影響。 4.1.34.1.3 數(shù)據(jù)庫的建立與連接數(shù)據(jù)庫的建立與連接 數(shù)據(jù)庫建立首先必須明確數(shù)據(jù)庫保存什么樣的數(shù)據(jù),然后設 計數(shù)據(jù)庫,建立由字段組成的表,字段里定義要存儲的數(shù)據(jù)類型 表 5-1 帳務查詢表 字段名字數(shù)據(jù)類型字段說明 班級文本20 個字符 學號數(shù)字主鍵 姓名文本20 個字符 書名文本100 個字符 價格數(shù)字 數(shù)量數(shù)字 5-2 用戶表 字段名字類型 字段說明 用戶權限文本 主鍵 用戶名文本 20 個字符 密碼字符 數(shù)據(jù)庫的建立代碼: Private Sub cmdInsertDb_Click() Dim fs, d, s Set fs = CreateObject(“Scripting.FileSystemObject“) d = App.Path & “book.mdb“ CommonDialog1.DialogTitle = “請選擇導入數(shù)據(jù)庫“ CommonDialog1.Filter = “Access2000 的數(shù)據(jù)庫 (*.mdb) |*.mdb“ CommonDialog1.ShowOpen e = CommonDialog1.FileName If e = “ Then Exit Sub End If lblInfo.Caption = “正在導入數(shù)據(jù)庫“ Set dbConnection = Nothing Set dbRecordset = Nothing fs.copyfile e, d, True Form_Load lblInfo.Caption = “導入完成
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 杭州河道護坡施工方案
- 土方開挖階段施工方案
- 水工程施工方案
- 平整小院地面施工方案
- 屋頂粉刷砂漿施工方案
- 水泵安裝施工方案
- TSHZJRXH 001-2024 石河子自助銀行建設規(guī)范
- 二零二五年度退房流程規(guī)范合同
- 二零二五年度未成年人特殊監(jiān)護協(xié)議書
- 二零二五年度鋼琴考級輔導班報名合同書
- 醫(yī)院設施日常巡查管理制度
- 2025年太倉市文化旅游發(fā)展集團限公司及子公司公開招聘12名高頻重點提升(共500題)附帶答案詳解
- 機械制圖題庫及答案
- 安裝承包合同(2025年)
- 云上貴州大數(shù)據(jù)(集團)有限公司招聘筆試沖刺題2024
- 人教版四年級下冊數(shù)學第二單元觀察物體(二) 單元測試
- 建筑工程公司績效考核制度范本
- 保育員與教師協(xié)作配合的技巧與案例
- 2024-2030年中國實驗室家具行業(yè)發(fā)展規(guī)劃及投資前景預測報告版
- 綠色金融案例分析
- 【MOOC】運動安全與健康-浙江大學 中國大學慕課MOOC答案
評論
0/150
提交評論