1 引言
目前我軍車輛器材管理信息系統廣泛應用于倉庫、供應站及部隊單位,作為器材籌措、儲存、供應和管理的統一業務平臺。器材計算機管理系統是實現器材倉庫業務流程規范化,統計數據標準化,數據傳輸網絡化,信息采集自動化的基本條件。器材庫存管理數據庫作為器材管理信息系統的核心組成部分,集中存儲了大量日常工作數據,這些數據在器材保障各業務部門之間流通和共享,直接應用于各部門的數據統計和查詢,并作為器材消耗預測分析、庫存控制模型分析等決策支持系統的底層數據源,間接服務于高層管理決策。因此,如何設計結構合理、模式規范的應用數據庫,使系統能夠高效存儲和優化查詢,是本論文亟需解決的問題,也是建立車輛器材管理信息系統的系統目標。
2 相關理論和方法
數據庫設計是要求在特定的應用環境中構造出較優的數據庫模式,建立起業務數據庫使系統能有效地存儲數據,滿足用戶的各種應用需求。數據庫設計要遵循規范化設計原則,使數據冗余少,保證數據的唯一性、正確性和完整性。
2.1 規范化理論
所謂規范化就是用形式更為簡潔、結構更加合理的關系模式取代原有關系的過程。規范化的目的是使消除存儲異常,使數據冗余盡量小,便于插入、刪除和更新。以函數依賴為基礎的關系模式的規范化等級主要有5種,即第1范式(1NF),第2范式(2NF),第3范式(3NF),BC范式(BCNF)和第4范式(4NF),滿足這些范式條件的關系模式可在不同程度上避免冗余、插入和更新異常問題。
根據實體聯系E—R圖寫出的關系模式通常存在一些操作上的異常問題,為了消除這些異常問題,需要進行規范化處理,優化數據模式。具體做法是:確定數據依賴,把每個關系模式的各個屬性按數據分析階段所得到的語義寫出其數據依賴,同時,考察不同的關系模式屬性之間是否還存在某種數據依賴,得到一組數據依賴及諸關系的全部數據依賴。按照數據依賴的理論,逐一分析這組關系模式,確定他們屬于第幾范式,進行模式分解。
2.2 模式分解原則
進行模式分解時由于受到數據間的相互約束,分解不可能是隨意的。在規范化的關系分解過程中,不僅要著眼于提高關系的范式等級,而且應遵守以下3條原則:
(1)無損分解原則。無損分解就是在關系分解過程中,既不丟失數據也不增加數據,同時還能保持原有的函數依賴。一個關系分解為多個關系,原來的數據就存儲到多個關系中。起碼要求分解后不能丟失原來的信息。
(2)相互獨立原則。所謂獨立是指分解后的新關系之間相互獨立,對一個關系內容的修改不應該影響到另一關系。
(3)范式等級適當。關系分解必須從實際出發,并不是范式等級越高,分解得越細就越好。若把關系分解得過于瑣碎,雖然對于消除數據冗余和更新異常等有好處,但在進行檢索操作時往往又需要進行鏈接,從而使檢索效率大大降低。而且在數據庫操作中,通常檢索操作多于更新操作.其結果很可能是分解帶來的好處與檢索的效率降低相比,得不償失。因此一般規范化只需達到3NF就可以了。
2.3 改善數據庫性能
關系數據庫的性能好壞主要體現在查詢速度上,這是數據庫應用的一個關鍵問題,必須在數據庫的設計中加以認真考慮,特別是對那些響應時間要求較苛刻的應用環境,應予以特別注意。可以從以下幾個方面改善數據庫性能,提高查詢速度.達到數據庫設計的優化目的。
(1)減少連接操作。連接操作對數據庫的查詢速度有著重要的影響。參與聯接的關系越多,查詢越慢。對一些常用的和性能要求較高的數據庫查詢,最好是一元查詢,這與規范化的要求相矛盾。此時可以通過逆規范化,即把規范化的關系再合并起來,以保證性能。但這樣會引起更新異常,必須采取相應的措施來保證數據庫的完整性,但也會增加系統的開銷。因此,做逆規范化時需要權衡利弊,仔細分析應用的數據存取需求和實際的系統性能。
(2)減小關系大小及數據量。被查詢關系的大小對查詢速度影響很大。為了提高查詢速度,可以采用水平分割或垂直分割等方法把一個關系分成幾個關系,使每個關系的數據量減少。垂直分割可提高常用數據的查詢速度,但也可能使某些操作不得不執行連接操作,從而降低了效率。因此,決定是否進行垂直分割取決于是否垂直分割后數據庫上的所有操作的總效率得到了提高。同時,垂直分割還要確保無損連接和保持函數依賴。
3 器材庫存管理數據庫結構設計
3.1 概念設計
本系統主要涉及到器材的調撥供應、器材入庫和出庫等業務流程和數據的管理,涉及主要實體有請領單位或部門、器材、調撥單、倉庫、出庫單、入庫單等。采用E—R模型來描述實體間的聯系,如圖l所示。器材調撥時由器材使用部門根據請領計劃申請調撥單,核準的調撥單由倉庫執行。器材入庫、出庫時倉庫需根據入庫、出庫單進行操作。這里只描述其中主要的實體及其關系。
圖l 車輛器材倉儲管理信息系統出/入庫
3.2 邏輯結構
數據庫邏輯結構設計就是將概念結構轉換為關系表,以便在關系數據庫管理系統(DBMS)中實現。通常首先將E—R圖中的每一個實體和聯系轉換為一個關系表,然后進行模式分解規范化處理,得到關系大小和關系連接均適中的最優表結構。本數據庫邏輯模型的主要表結構如下。
(1)Items表。Items表主要屬性有器材代碼(ItemID)、器材種類(ItemCategoryID)、器材名稱(Name)、型號(Spccifica·tion)、單位(Unit)、價格(StandardPrice)、安全儲備量(SafeDa—ta)。為了保持系統器材目錄的完整性,防止因刪除一些器材導致系統出錯,用一個lsDeleted字段標記器材是否已被刪除,已刪除的器材不再出現于入庫單和出庫單中。heralD字段為主鍵。具有唯一性。
(2)WareHouses表。WareHouses表主要屬性有倉庫代碼(WareHouselD)、倉庫編號(WareHouseCode)、倉庫名稱(De—scription)、倉庫保管員(UscrName)、上級倉庫(ParentWareHou—seID),WareHouseID字段為主鍵,具有唯一性,WareHouseCode是為提高輸人效率而設置的輸入代碼。
(3)ReceiptMain表。ReceiptMain表主要屬性有計劃單號(ReceivingCode)、入庫日期(ArriveDate)、經辦人(Receiver-ID)、倉庫(WareHouseID)、供貨單位(SupplierID)、質檢員(CheekerlD)、收貨單位(ReviewerID)、備注(Description)。同時增加一個ReceiptlD字段,自動遞增,標識入庫流水單號。ReceiptlD字段為主鍵,具有唯一性。
(4)DeliveryMain表。DeliveryMain表主要屬性有出庫單號(DeliverylD)、出庫日期(DeliveryDate)、經辦人(UserName)、倉庫(WareHouselD)、所在部門(DepartmentlD)、搬運工(ReviewerlD)、備注(Description)。將DeliveryID字段作為表的標識列,自動遞增,標識出庫流水單號。DeliverylD字段為主鍵,具有唯一性。
3.3 物理實現
本文采用Microsoft公司最新發布的一款關系數據庫管理系統SQL Server 2008,它繼承了SQL Server2000和SQL Server2005可靠性、可用性、可編程性和易用性等方面的特點,在保護數據庫查詢、服務器簡化管理操作、增加應用程序穩定性和系統執行效能方面等更具強大的性能優勢,是大規模聯機事務處理(OLTP)、數據倉庫和電子商務應用程序的優秀數據庫平臺。本系統在SQL Server 2008環境中建立了器材庫存管理數據庫Qica—Ware。其樹狀結構如圖2所示。
圖2 Qica,Ware樹狀結構
4 結束語
數據庫將信息系統中大量數據按一定的模型組織起來,提供存儲、維護、檢索數據的功能,使用戶可以方便、及時、準確地從數據庫中獲得所需的信息。數據庫的設計是信息系統開發和建設的重要組成部分,需要與應用系統的設計相結合,因而是件復雜而細致的工作。本文僅對器材庫存管理數據庫的邏輯結構進行了初步設計,并應用多表連接和嵌套子查詢實現了特定目標的查詢應用,更細致和更完善的數據庫設計如視圖設計、觸發器設計、存儲過程設計和安全性設計等還有待深入進行。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.vmgcyvh.cn/
本文標題:車輛器材庫存管理數據庫的設計與應用