摘要:本文以高校圖書館管理系統開發過程為背景,從需求分析、概要設計、邏輯設計、物理設計及系統的實現等全過程進行描述,體現了數據庫設計的一般過程。
關鍵詞:圖書管理系統 數據庫設計 實現
一個圖書管理系統數據庫的主要任務是對讀者信息、管理員信息、圖書資料信息、借閱歸還圖書信息、罰款信息等基本信息的操作及處理。此系統功能分為面向學生和面向管理員兩部分,其中學生可以進行借閱、續借、歸還和查詢書籍等操作,管理員可完成書籍和學生信息的增加、刪除和修改以及對學生借閱、續借和歸還的確認。
本文以高校圖書館管理系統開發過程為背景,從需求分析、概要設計、邏輯設計、物理設計及系統的實現等全過程進行描述。
1 需求分析
需求分析在于要弄清用戶對開發的數據庫應用系統的確切要求。數據庫設計的第一步是明確數據庫的目的和作用,也就是說利用該數據庫可以實現哪些功能。明確目的之后,就可以確定你需要保存哪些主題的信息,以及每個主題需要保存哪些信息。
本系統在構造時,根據圖書管理系統的主要任務,把系統的層次劃分了四個模塊:圖書維護,人員信息管理,圖書借閱管理、信息查詢。
由此,確定了本系統的數據庫需要處理的相關對象:
讀者信息,管理員信息,館藏圖書信息,借閱信息,借閱歷史信息,罰款信息。
具體處理需求如下:①圖書維護:新書入庫、現有圖書信息的修改以及刪除。②人員信息管理:實現對讀者和管理員的基本信息的查詢和編輯管理。③圖書借閱管理:記錄借閱信息,并能實現超期罰款、丟失賠償的功能。④信息查詢:讀者能夠通過一個或多個關鍵字查詢書籍信息,能夠查詢本人的借閱信息,管理員能查詢讀者和圖書的借閱信息。⑤能夠提供一定的安全機制,防止隨意刪改數據庫信息。⑥能夠提供一定的維護手段,應對意外情況的發生,能夠實現數據庫的備份和恢復。
2 概要設計
從功能描述可知該系統的主要實體有讀者、管理員和圖書。其E-R模型如下:
E-R圖中各實體及相關聯系的屬性詳見下述描述。
3 邏輯設計
以上的概要設計階段是獨立于任何一種數據模型的,但是邏輯設計階段就與選用的DBMS產品相關了,系統邏輯設計的任務就是將概要設計階段設計好的基本E-R圖轉換為選用DBMS產品所支持的數據模型相符合的邏輯結構。具體內容包括數據組織(將E-R圖轉換成關系模型、模型優化、數據庫模式定義、用戶子模式設計)、數據處理(畫出系統功能模塊圖)兩大任務。限于篇幅,此處只簡單描述具體的基本E-R圖向關系模型的轉化,其余內容省略。
圖書:Book(BookID,BookNo,BookName,BookWriter,BookPu
blish,BookPrice,BookDate,BookClass,BookMain,BookPrim,Boo
kCopy,BookState,BookRNo)
讀者:Reader(ReaID,ReaName,ReaSex,ReaNo,ReaLBID,Re
aType,ReaDep,ReaGrade,ReaPref,ReaDate)
管理員:Maneger(MID,MName,MSex,Mpwd,MAuth,MTele
ph,MAddre)
讀者類別:ReaderTpye(LBID,LBName,LBnum,LBbqx,LBqx)
館室:Room(RoomNo,RoomMID,RoomNum,RoomAddre)
借閱信息:Borrow(BookID,ReaderID,BookName,BookWriter,Outdate,YHdate)
借閱歷史:History(BookID,ReaderID,BookName,BookWriter,Outdate,Indate,YHdate)
罰款信息:Fine(BookID,ReaderID,BookName,Outdate,Indate,Fine,CLState,MID)
(注:標有直線下劃線的為主屬性,標有波浪線下劃線的是外鍵屬性,主屬性與外鍵屬性一起構成主碼)
4 物理設計
數據庫的物理設計就是為邏輯數據模型選取一個最適合應用要求的物理結構的過程,在這個階段中要完成兩大任務:
4.1 確定數據庫的物理結構,在關系數據庫中主要是存取方法和存儲結構;
4.2 對物理結構進行評價,評價的重點是時間和空間效率。
在數據存儲方面,本系統為數據庫建立如下的索引關系:
4.2.1 由于基本表Reader,Book的主碼ReaID,BookID經常在查詢條件和連接操作的連接條件中出現,且它們的值唯一,在兩個屬性上建立唯一性索引。
4.2.2 由于基本表Reader的屬性ReaDep,Book的屬性BookPublish經常在查詢條件中出現在兩個屬性上建立聚簇索引。
4.2.3 借閱信息基本表Borrow的屬性ReaID,BookID,經常在查詢條件中出現,考慮在其之上建立聚簇索引。
4.2.4 罰款信息基本表Fine的屬性ReaID,BookID,經常在查詢條件中出現,考慮在其之上建立聚簇索引。
5 數據庫實施階段
數據庫實施階段首先要完成數據庫、表、視圖和相關索引的創建,其次應完成數據入庫,然后再考慮創建實現特定功能的存儲過程。
本系統考慮創建以下10個存儲過程,具體創建過程限于篇幅,此處略寫。
6 小結
本文從需求分析、概要設計、邏輯設計、物理設計及系統的實現等方面對高校圖書管理系統的設計進行了簡單描述。對于圖書管理系統,各個系統功能可能不完全相同,本文只是選取了一些常見功能,進行了數據庫的設計與分析。
參考文獻:
[1]王亞楠.SQL server 2005 數據庫應用技術.機械工業出版社2010.5.
[2]薩師煊.數據庫系統概論.高等教育出版社.2001.
[3]郭盈發.數據庫原理.西安電子科技大學出版社.2002.
[4]密君英.SQL server 2005中文版經典案實例教程.中國電力出版社.2008.