安然
摘 要
本文以圖書館管理系統(tǒng)為實例,闡述如何做好數(shù)據(jù)表的設計,得出圖書管理系統(tǒng)的關系模式,并說明如何利用SQL Server創(chuàng)建數(shù)據(jù)庫,實現(xiàn)圖書管理數(shù)據(jù)的電子化統(tǒng)計。
【關鍵詞】SQL Server 數(shù)據(jù)庫 圖書館 借閱 信息表
我院圖書館今年落成,通過在我院圖書館調(diào)研,發(fā)現(xiàn)圖書館管理員每天需要查詢的數(shù)據(jù)非常多并且復雜,所以需要設計圖書館管理系統(tǒng)進行應用,從而達到高效、便捷的管理模式。
我們知道,數(shù)據(jù)庫是按照一定的數(shù)據(jù)模型來組織、描述和存儲數(shù)據(jù)。因此,我們首先必須設計好數(shù)據(jù)模型和結(jié)構(gòu),然后才能將上面的數(shù)據(jù)合理地進行存儲,從而達到科學規(guī)范的管理數(shù)據(jù)的目的和效果,如何建立科學規(guī)范的數(shù)據(jù)和組織表數(shù)據(jù)呢?數(shù)據(jù)表的設計需要下面的流程:概念設計——邏輯設計——物理設計,通過這樣的設計,我們就可以設計出規(guī)范、高校的圖書館管理系統(tǒng)。
經(jīng)過對運城職業(yè)技術學院圖書館的調(diào)研,根據(jù)我院圖書館的需求,首先先做出系統(tǒng)需求分析設計,事實上,這部分可以根據(jù)不同的高校需求不同作出調(diào)整。
1 圖書館管理系統(tǒng)需求分析設計
圖書館借閱管理系統(tǒng)的具體要求如下:
1.1 錄入圖書基本信息
將圖書館的圖書信息輸入到數(shù)據(jù)庫中。
1.2 修改圖書基本信息
要求可以修改、刪除圖書信息。
1.3 用戶登錄模塊
分配用戶的權限,以不同身份進行登錄。
1.4 系統(tǒng)用戶管理
可以對用戶進行添加、修改、刪除等操作。
1.5 圖書借閱證管理
要求可以處理丟失、過期、新辦等管理。
1.6 還書管理
包括借書、還書、過期還書和書籍丟失處罰款等管理。
2 圖書館管理系統(tǒng)功能設計
圖書借閱管理系統(tǒng)的功能結(jié)構(gòu)設計如下:
2.1 用戶管理模塊
用戶管理系統(tǒng)主要用于輸入用戶的信息,顯示用戶名及類型、包括添加用戶、刪除用戶、修改用戶等功能。
2.2 重新登錄模塊
用于多個用戶重新登錄。
2.3 圖書分類管理模塊
將圖書分為兩級進行管理,包括添加、刪除、修改圖書分類等功能。
2.4 圖書信息管理模塊
根據(jù)圖書分類輸入圖書信息,對圖書進行管理,其基本功能包括添加、刪除、修改圖書信息。
2.5 證件類型管理模塊
用于管理借閱證件類型,根據(jù)借閱證件類型確定借閱圖書的時間、續(xù)借時間、借閱圖書的數(shù)量等,包括添加、刪除、修改借閱證類型信息等基本功能。
2.6 借閱證件管理模塊
根據(jù)借閱證件狀態(tài)(有效、過期、掛失等)和證件類型對借閱證信息進行管理,確定借閱者的單位、身份、借書天數(shù)、借書數(shù)目等信息,包括添加、刪除、修改借閱證信息等基本功能。
2.7 圖書借閱管理模塊
圖書借閱管理模塊是系統(tǒng)核心部分,它根據(jù)圖書借閱狀態(tài)(借閱、續(xù)借、過期)來管理圖書的借閱操作,包括借閱、續(xù)借、歸還、丟失圖書等操作工能。
3 數(shù)據(jù)庫概念結(jié)構(gòu)設計
根系調(diào)研圖書館里系統(tǒng)的需求分析和功能分析,我們將數(shù)據(jù)規(guī)劃為:圖書實體(圖書編號、圖書書名、圖書分類、作者、出版社、圖書價格、圖書封面)、讀者實體(借書日期、更新日期、還書日期、罰金)、借閱實體(編號、讀者信息、工作單位、身份證號、讀者類型、辦證日期、狀態(tài))。
4 數(shù)據(jù)庫邏輯結(jié)構(gòu)設計
根據(jù)圖書借閱管理功能設計的需求,設計出6個數(shù)據(jù)表,如下要求。
表1:BookType圖書分類信息表:分類字段名稱為:列名(屬性為:TypeID、TtpeName、UID),數(shù)據(jù)類型(屬性:int、varchar(20)、int),是否為空值(屬性:Not null、Not null、Not null),說明(屬性:圖書分類編號(主鍵)、圖書分類名稱、上級分類編號)
表2:BookInfo圖書基本信息表:分類字段名稱為:列名(屬性為:BookNo、BookName、Author、Publisher、Price、TypeID、CoverPhoto、CoverPhoto、Memo),數(shù)據(jù)類型(屬性為:varchar(20)、varchar(20)、varchar(20)、varchar(20)、real、int、image、text),是否為空(屬性為:Not null、Not null、Not null、Not null、Not null、Not null、null、null),說明(屬性為:圖書編號(主鍵)、圖書名稱、作者、出版社、圖書價格、圖書分類、圖書封面、注釋)。
表3:CardType借閱證類型表:分類字段名稱為:列名(屬性為:CTypeID、TypeName、MaxCount、MaxDays、RenewDays),數(shù)據(jù)類型(屬性為:char(10)、varchar(20)、smallint、smallint、smallint),是否為空值(屬性為:Not null、null、null、null、null),說明(屬性:類型編號(主鍵)、類型名稱、借閱數(shù)量、借閱時間、續(xù)借時間)。
表4:CardInfo借閱證件信息表:分類字段名稱為:列名(屬性為:CardNo、Reader、WorkPlace、IDCard、CTypeID、CreateDate、CardState),數(shù)據(jù)類型(屬性為:char(18)、char(20)、varchar(50)、char(18)、char(10)、datetime、tinyint),是否為空(屬性為:Not null、null、Not null、Not null、Not null、Not null、Not null),說明(屬性為:借閱證件編號(主鍵)、讀者姓名、工作單位、身份證號、借閱證件類型、辦證日期、證件狀態(tài))。
表5:BorrowInfo圖書借閱信息表:分類字段名稱為:列名(屬性為:CardNO、BookNO、BorrowDate、RenewDate、ReturnDate、BorrowState),數(shù)據(jù)類型(屬性為:char(18)、varchar(20)、datetime、datetime、datetime、tinyint),是否為空值(屬性為:Not null、Not null、Not null、null、Not null、Not null、),說明(屬性為:借閱證編號(主鍵)、圖書編號(主鍵)、借閱日期、續(xù)借日期、歸還日期、借閱狀態(tài))。
表6:User用戶信息表:分類字段名稱為:列名(UserName、Password、UserType),數(shù)據(jù)類型(char(20)、varchar(20)、tinyint),是否為空(Not null、null、Not null、),說明(用戶名(主鍵)、密碼、用戶類型)。
5 數(shù)據(jù)庫信息表內(nèi)容填充
現(xiàn)在,圖書借閱整體架構(gòu)已經(jīng)設計完畢,需要管理員在每個數(shù)據(jù)庫信息表中填寫圖書的信息,這將是一個大量的工程,不過通過建立圖書館圖書數(shù)據(jù)庫管理軟件,即可方便地對數(shù)據(jù)進行管理、維護與查找,消除數(shù)據(jù)中的重復數(shù)據(jù),保證數(shù)據(jù)的一致性和完整性,甚至可以通過網(wǎng)絡使更多的人訪問這些數(shù)據(jù),達到圖書館圖書借閱最大化、管理人員方便化的目的。
6 結(jié)束語
本文主要用到了SQL Server2000中數(shù)據(jù)類型及表的創(chuàng)建與管理的知識點,這只是數(shù)據(jù)庫中的其中一方面知識,除了可以利用在企業(yè)管理器中進行插入、修改、刪除數(shù)據(jù)的方法,如果遇到更加復雜的情況,還可以利用SQL語句來完成,比如說:創(chuàng)建表的CREATE TABALE,修改表的語句ALTER TABLE,刪除表的語句為DROP-TABLE等等語句,都可以數(shù)據(jù)庫中表的信息進行設計。利用數(shù)據(jù)庫查詢數(shù)據(jù)大大節(jié)省了人工成本,是目前現(xiàn)代化管理系統(tǒng)的重要手段。
參考文獻
[1]廖世蓉.SQL Server2000應用基礎[M].北京:高等教育出版社,2007:47-74.
[2]梁爽.SQL Server2008數(shù)據(jù)庫應用技術[M].北京:清華大學出版社,2013:30-44.
作者單位
運城職業(yè)技術學院 山西省運城市 044000