當前位置:首頁 » 操作系統 » 資料庫設計典型實例

資料庫設計典型實例

發布時間: 2022-10-15 00:43:17

⑴ VB/VF圖書管理系統(程序+論文)

圖書館管理系統

摘 要
圖書管理系統是典型的信息管理系統(MIS),其開發主要包括後台資料庫的建立和維護以及前端應用程序的開發兩個方面。對於前者要求建立起數據一致性和完整性強、數據安全性好的庫。而對於後者則要求應用程序功能完備,易使用等特點。
因此本人結合開入式圖書館的要求,對MS SQL Server2000資料庫管理系統、SQL語言原理、Delphi應用程序設計,Delphi資料庫技術進行了較深入的學習和應用,主要完成對圖書管理系統的需求分析、功能模塊劃分、資料庫模式分析,並由此設計了資料庫結構和應用程序。系統運行結果證明,本文所設計的圖書管理系統可以滿足借閱者、圖書館工作人員和高級管理員三方面的需要。
第一章對資料庫應用系統開發和圖書管理系統進行了簡明的介紹,並分析了開發圖書管理系統所應進行的工作。
第二章對資料庫的設計和SQL語言的使用進行了系統分析,為深入理解資料庫應用打下了基礎。
第三章學習了具體的開發工具Delphi 6.0,對其資料庫組件,SQL語言在Delphi中的應用等資料庫編程關鍵技術進行了系統的介紹。
第四章分析了圖書管理信息系統的應用需求,按照資料庫設計理論一步一步地給出了系統需求說明書、局部ER圖、全局ER圖、系統關系模式,子模式,利用MS SQL Server2000建立了資料庫
第五章進行了具體的程序設計,具體劃分了三類用戶的操作許可權,設計了了三個操作界面。實現了資料庫表的瀏覽,記錄的添加、刪除和修改,報表的生成,實現了多資料庫表的連接操作,實現了多條件查詢和模糊查詢,並靈活實現了對不可更新查詢結果集的更新操作,實現了主從表操作,實現了密碼維護功能,最後,系統還可以導入資料庫以對任意同結構的資料庫進行操作。
設計充分利用Delphi 6、MS SQL Server2000資料庫技術的強大力量,提高了編程效率和可靠性。
關鍵詞:資料庫,SQL語言,MS SQL Server,Delphi6,
資料庫組件,圖書管理,窗體,listview組件

目 錄
摘 要 ……………………………………………………………………………… I
第一章 緒 論 …………………………………………………………………… 1
§1.1 資料庫應用系統開發簡介 ……………………………………………… 1
§1.2 圖書管理系統 ……………………………………………………… 4
§1.3 本文所做的主要工作 …………………………………………………… 6
第二章 資料庫理論基礎 ………………………………………………………… 7
§2.1 資料庫系統設計及範式分析 …………………………………………… 7
§2.2 SQL語言介紹………………………………………………………………… 11
2.2.1 SQL基礎 ………………………………………………………………… 11
2.2.2 SQL語句 ………………………………………………………………… 12
第三章 應用系統開發工具………………………………………………… 16
§3.1 Delphi6.0 VCL組件的體系結構……………………………………… 16
§3.2 資料庫組件介紹 …………………………………………………………… 17
§3.3 SQL語言在Delphi中的應用 …………………………………………… 18
§3.4 MS SQL Server簡述 …………………………………………………… 22
第四章 圖書管理系統設計分析 ………………………………………… 24
§4.1 應用需求分析 …………………………………………………………… 24
§4.2 系統功能模塊劃分 ……………………………………………………… 29
§4.3 系統資料庫設計 ………………………………………………………… 29
第五章 圖書管理系統應用程序設計 …………………………………… 37
§5.1 系統窗體模塊組成 ………………………………………………………… 37
§5.2 數據模塊窗體的設置 ……………………………………………………… 37
§5.3啟動畫面的實現…………………………………………………………… 38
§5.4用戶登錄窗體的的實現……………………………………………………… 39
§5.5用戶密碼認證窗體的的實現………………………………………………… 39
§5.6借閱者服務模塊的實現…………………………………………………… 40
5.6.1圖書查詢功能的實現………………………………………………… 41
5.6.2借閱者登錄功能的實現………………………………………………… 42
5.6.3借閱者借閱情況功能的實現…………………………………………… 43
5.6.4借閱者個人資料維護功能的實現……………………………………… 47
§5.7工作人員-圖書借閱/歸還模塊的實現……………………………………… 49
5.7.1工作人員進行圖書借閱功能實現……………………………………… 50
5.7.2工作人員進行圖書歸還功能實現……………………………………… 53
§5.8圖書館管理員模塊的實現…………………………………………… 54
5.8.1圖書館管理員圖書管理功能的實現…………………………………… 55
5.8.2圖書館管理員工作人員和管理員管理功能的實現…………………… 58
5.8.3圖書館管理員修改圖書類別及統記功能的實現……………………… 60
5.8.4圖書館管理員借閱者管理功能的實現………………………………… 62
5.8.5圖書館維護借閱者管理功能的實現………………………………… 62
5.8.6圖書館身份維護功能的實現……………………………………… 64
5.8.7圖書館借閱者統計功能的實現………………………………… 65
5.8.8圖書館統計借閱過期記錄功能的實現………………………… 67
§5.9系統信息顯示的實現………………………………………………… 68
第六章 結束語 ……………………………………………………………… 69
致 謝 ………………………………………………………………………………70
參考書目 …………………………………………………………………………… 70

第一章 緒 論
§1.1 資料庫應用系統開發簡介
在資料庫應用系統開發之前,對開發資料庫的基本概念應當了解,對資料庫的結構、開發資料庫應用程序的步驟、開發體系及方法都應當有相當清晰的了解和認識。
資料庫應用系統開發的目標是建立一個滿足用戶長期需求的產品。開發的主要過程為:理解用戶的需求,然後,把它們轉變為有效的資料庫設計。把設計轉變為實際的資料庫,並且這些資料庫帶有功能完備、高效能的應用。
資料庫技術在計算機軟體鄰域研究中一直是非常重要的主題,產生於60年代,30多年來資料庫技術得到了迅速發展,並已形成較為完整的理論體系和一大批實用系統。並且,近年來,隨著World Wide Web(WWW)的猛增及Internet技術的迅速發展,使得資料庫技術之時成為最熱門技術之一。
1.1.1 資料庫
如圖1.1顯示了資料庫系統的主要組件。資料庫由DBMS(資料庫管理系統)處理,DBMS則由開發人員和用戶通過應用程序直接或間接地使用。它主要包括四個要素:用戶數據、元數據、索引和應用元數據。

1.1.1.1 用戶數據
目前,大多數主流資料庫管理系統把用戶數據表示為關系。現在把關系看作數據表。表的列包含域或屬性,表的行包含對應業務環境中的實體的記錄。並非所有的關系都同樣符合要求,有些關系比其它關系更結構化一些。第二章描述了一個用以產生良好結構關系的過程,稱作規范化。
為了對比結構差的關系和結構好的關系之間的差別,以本文所設計的圖書管理系統中的圖書和圖書借閱者關系為例來說明,假若設計關系R1(借書證號,姓名,性別,身份編號,身份證,聯系電話,圖書編號,圖書名稱,圖書類別,作者,出版社,出版日期,備注,價格,數量);這個關系的問題出在它有關於兩個不同主題的數據,就是圖書借閱者和圖書。用這種方式構成的關系在進行修改時,會出現問題。因為一個圖書借閱者可能借閱多本書,如果某個圖書借閱者的某個欄位(如聯系電話)出現變更,它所借閱的圖書記錄(可能多個)也就必須變化,這是不好的。因此數據用兩個關系表示更好。現在如果某圖書借閱者改變了它的聯系電話,只有關系(表)user的對應行需要改變。當然,要想產生一個,顯示圖書名稱及其借閱者聯系電話的報表,就需要將這兩個表的行結合起來。結果表明,將關系分別存儲,在生成報表的時候將它們結合起來,比把它們存儲在一個合成的表中更好。
user(借書證號,姓名,性別,身份編號,身份證,聯系電話,)
book(圖書編號,圖書名稱,圖書類別,作者,出版社,出版日期,備注,價格,數量)
1.1.1.2 元數據
資料庫是自描述的,這就意味著它自身包含了它的結構的描述,這種結構的描述稱作元數據。因為DBMS產品是用來存儲和操縱表的,所以大多數產品把元數據以表的形式存儲,有時稱作系統表。這些系統表存儲了資料庫中表的情況,指出每一個表中有多少列,那一列是主關鍵字,每一列的數據類型的描述,它也存儲索引、關鍵字、規則和資料庫結構的其他部分。
在表中存儲元數據不僅對DBMS是有效的,對用戶也是方便的,因為他們可以使用與查詢用戶數據同樣的查詢工具來查詢元數據。本文第二章所介紹的SQL語言可以同時用於元數據和用戶數據。
1.1.1.3 索引
第三種類型的數據改進了資料庫的性能和可訪問性,這種數據經常稱作開銷數據,盡管有時也採用其他類型的數據結構,如鏈表,但它主要還是索引。索引可以用來排序和快速訪問數據。下面以本人的圖書管理信息系統中的book表為例來說明。
假定數據在磁碟上是按』圖書編號』的遞增順序排列的,用戶想列印一個按』圖書名稱』排序的圖書數據報表。為此,所有的數據都需要從源表中提取出來並排序,除非表很小,否則這是一個很費時的過程。或者,可以在『圖書名稱』欄位上創建一個索引,該索引的條目按照『圖書名稱』排序,這樣,該索引的條目可以讀出來,並用來按順序訪問book數據。
索引用於快速訪問數據。例如,一個用戶只想訪問book表中『圖書類別』值為『01』的那些學生。如果沒有索引,則必須搜索整個源表;但有了索引之後,可以找到索引條目,並使用它來挑選所有合適的行。
索引對排序和查找是有幫助的,但要付出代價。book表中的行每次改變時,索引也必須改變,這意味著索引並非隨意的,應該在真正需要時保存。
1.1.1.4 應用元數據
存儲在資料庫中的第四種數據是應用元數據,它用來存儲用戶窗體、報表、查詢和其他形式的查詢組件。並非所有的DBMS都支持應用組件,支持組件的DBMS也不一定把全部組件的結構作為應用元數據存儲在資料庫中。然而,大多數現代的DBMS產品存儲這種數據作為資料庫的一部分。一般來說,資料庫開發人員和用戶都不直接訪問應用元數據,想反,他們通過DBMS中的工具來處理這些數據。
MS SQL Server2000中就支持窗體、存儲過程等應用元數據。
1.1.2 資料庫管理系統
資料庫管理系統(DBMS)是指資料庫系統中管理數據的軟體系統。DBMS是資料庫系統的核心組成部分。對資料庫的一切操作,包括定義、更新及各種控制,都是通過DBMS進行的。DBMS總是基於某種數據模型,可以把DBMS看成是某種數據模型在計算機系統上的具體實現。根據數據模型的不同,DBMS可以分成層次型、網狀型、關系型、面向對象型等。MS SQL Server2000就是一種關系型資料庫管理系統。
關系模型。關系模型主要是用二維表格結構表達實體集,用外鍵表示實體間聯系。關系模型是由若干個關系模式組成的集合。關系模式相當於前面提到的記錄類型,它的實例稱為關系,每個關系實際上是一張二維表格。
關系模型和層次、網狀模型的最大判別是用關鍵碼而不是用指針導航數據,表格簡單用戶易懂,編程時並不涉及存儲結構,訪問技術等細節。關系模型是數學化模型。SQL語言是關系資料庫的標准化語言,已得到了廣泛的應用。
如圖1.1所示,DBMS的特點和功能可以分為三個子系統:設計工具子系統、運行子系統和DBMS引擎。
設計子系統有一個方便資料庫及其應用創建的工具集。它典型地包含產生表、窗體、查詢和報表的工具。DBMS產品還提供編程語言和對編程語言的介面。
運行子系統處理用設計子系統開發的應用組件。它所包含的運行處理器用來處理窗體和資料庫的數據交互,以及回答查詢和列印報表等。
DBMS引擎從其他兩個組件接受請求,並把它們翻譯成對操作系統的命令,以便讀寫物理介質上的數據。DBMS引擎還涉及事務管理、鎖、備份和恢復。
1.1.3 創建資料庫
1.1.3.1 資料庫模式
資料庫模式定義了資料庫的結構、表、關系、域和業務規則。資料庫模式是一種設計,資料庫和應用正是建立在此基礎上的。
域是一列可能擁有的值的集合。必須為每一個表的每一列確定域。除了數據的物理格式外,還需要確定是否有些域對表來說是唯一的。
資料庫模式的最後一個要素是業務規則,它是對需要反映在資料庫和資料庫應用程序中的業務活動的約束。業務規則是模式的一個重要部分,因為他們指定了無論什麼數據變化到達DBMS引擎,允許的數據值必須滿足的約束。不管無效的數據變化請求是來自窗體的用戶、查詢/修改請求還是應用程序,DBMS都應該拒絕。
遺憾的是,不同的DBMS產品用不同的方法實施業務規則。在某些情況下,DBMS產品不具備實施必要業務規則的能力,必須以代碼形式把它們編入應用程序。
1.1.3.2 創建表
1.1.3.3 定義聯系
1.1.4 應用組件
資料庫應用包括窗體、查詢、報表、菜單和應用程序。
§1.2 圖書管理系統
當今時代是飛速發展的信息時代。在各行各業中離不開信息處理,這正是計算機被廣泛應用於信息管理系統的環境。計算機的最大好處在於利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。
尤其對於復雜的信息管理,計算機能夠充分發揮它的優越性。計算機進行信息管理與信息管理系統的開發密切相關,系統的開發是系統管理的前提。本系統就是為了管理好圖書館信息而設計的。
圖書館作為一種信息資源的集散地,圖書和用戶借閱資料繁多,包含很多的信息數據的管理,現今,有很多的圖書館都是初步開始使用,甚至尚未使用計算機進行信息管理。根據調查得知,他們以前對信息管理的主要方式是基於文本、表格等紙介質的手工處理,對於圖書借閱情況(如借書天數、超過限定借書時間的天數)的統計和核實等往往採用對借書卡的人工檢查進行,對借閱者的借閱許可權、以及借閱天數等用人工計算、手抄進行。數據信息處理工作量大,容易出錯;由於數據繁多,容易丟失,且不易查找。總的來說,缺乏系統,規范的信息管理手段。盡管有的圖書館有計算機,但是尚未用於信息管理,沒有發揮它的效力,資源閑置比較突出,這就是管理信息系統的開發的基本環境。
數據處理手工操作,工作量大,出錯率高,出錯後不易更改。圖書館採取手工方式對圖書借閱情況進行人工管理,由於信息比較多,圖書借閱信息的管理工作混亂而又復雜;一般借閱情況是記錄在借書證上,圖書的數目和內容記錄在文件中,圖書館的工作人員和管理員也只是當時對它比較清楚,時間一長,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。如要對很長時間以前的圖書進行更改就更加困難了。
基於這此問題,我認為有必要建立一個圖書管理系統,使圖書管理工作規范化,系統化,程序化,避免圖書管理的隨意性,提高信息處理的速度和准確性,能夠及時、准確、有效的查詢和修改圖書情況。
§1.1 系統所做工作
1) 了解應用開發工具的現狀
2) DelPHi6.0編程基礎
3) MS SQL Server基礎
4) 設計資料庫;設計界面
5) 開發資料庫。資料庫實現的一些功能有
l 數據和數據說明的醒目顯示;
l 多條件的查詢、多條記錄的檢索、模糊查詢;
l 數據文件某種存儲格式導入數據窗體,經過數據完整性校驗存入資料庫;
l 資料庫安全性的設計;
l 資料庫的設計、數據介面、界面的設計。

§1.3 本文所作工作
緒論部分對資料庫應用系統的結構、開發進行了簡要介紹,分析了圖書管理信息系統設計的特點和任務。
第二章介紹了資料庫的設計和範式分析,並系統介紹了SQL語言,為設計和理解應用程序做了鋪墊。
第三章對系統介紹了Delphi 6.0的資料庫編程技術、SQL語言在Delphi 6.0中的應用、MS SQL Server基礎。
第四章分析了圖書管理系統的應用需求,設計了系統的資料庫結構,並根據需求對系統功能進行了劃分和細化。
第五章根據第四章的設計結果利用MSSQL Server2000和Delphi 6.0進行了具體的應用程序設計。
總結部分介紹了設計體會和編程體會,並指出了系統設計中的不足和改進的方向。

第二章 資料庫理論基礎
一個成功的信息管理系統,是建立在許多條件之上的,而資料庫是其中一個非常重要的條件和關鍵技術。
信息管理系統所涉及的資料庫設計分五個步驟:資料庫需求分析、概念設計、邏輯設計、物理設計與載入測試。
(1) 資料庫需求分析的任務是將業務管理單證流化為數據流,劃分主題之間的邊界,繪制出DFD圖,並完成相應的數據字典。
(2) 概念設計的任務是從DFD出發,繪制出本主題的實體-關系圖,並列出各個實體與關系的綱要表。
(3) 邏輯設計的任務是從E-R圖與對應的綱要表出發,確定各個實體及關系的表名屬性。
(4) 物理設計的任務是確定所有屬性的類型、寬度與取值范圍,設計出基本表的主鍵,將所有的表名與欄位名英文化(現在很多軟體能支持中文欄位,如MS SQL Server,我就是用的中文欄位名),實現物理建庫,完成資料庫物理設計字典。
(5) 載入測試工作貫穿於程序測試工作的全過程,整個錄入、修改、查詢、處理工作均可視為對資料庫的載入測試工作。
要設計出一個好的信息管理系統資料庫,除滿足系統所要求的功能外,還必須遵守下列原則:
² 基本表的個數越少越好。
² 主鍵的個數越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。
² 欄位的個數越少越好。
² 所有基本表的設計均應盡量符合第三範式。
資料庫的設計中,如何處理多對多的關系和如何設計主鍵,是兩個有著較大難度、需要重點考慮的問題。下面我們著重從SQL應用、資料庫設計範式和查詢優化等方面來分析本課題的系統關鍵技術和實現難點並加以解決。

§2.1 資料庫系統設計及範式分析
信息系統的主要任務是通過大量的數據獲得管理所需要的信息,這就必須存儲和管理大量的數據。因此建立一個良好的數據組織結構和資料庫,使整個系統都可以迅速、方便、准確地調用和管理所需的數據,是衡量信息系統開發工作好壞的主要指標之一。
2.1.1 資料庫系統設計
資料庫設計主要是進行資料庫的邏輯設計,即將數據按一定的分類、分組系統和邏輯層次組織起來,是面向用戶的。資料庫設計時需要綜合企業各個部門的存檔數據和數據需求,分析各個數據之間的關系,按照DBMS提供的功能和描述工具,設計出規模適當、正確反映數據關系、數據冗餘少、存取效率高、能滿足多種查詢要求的數據模型。
資料庫設計的步驟是:
(1) 資料庫結構定義:目前的資料庫管理系統(DBMS)有的是支持聯機事務處理CLTP(負責對事務數據進行採集、處理、存儲)的操作型DBMS,有的可支持數據倉庫、有聯機分析處理CLAP(指為支持決策的制定對數據的一種加工操作)功能的大型DBMS,有的資料庫是關系型的、有的可支持面向對象資料庫。針對選擇的DBMS,進行資料庫結構定義。
(2) 數據表定義:數據表定義指定義資料庫中數據表的結構,數據表的邏輯結構包括:屬性名稱、類型、表示形式、預設值、校驗規則、是否關鍵字、可否為空等。關系型資料庫要盡量按關系規范化要求進行資料庫設計,但為使效率高,規范化程度應根據應用環境和條件來決定。數據表設計不僅要滿足數據存儲的要求,還要增加一些如反映有關信息、操作責任、中間數據的欄位或臨時數據表。
(3) 存儲設備和存儲空間組織:確定數據的存放地點、存儲路徑、存儲設備等,備份方案,對多版本如何保證一致性和數據的完整性。
(4) 數據使用許可權設置:針對用戶的不同使用要求,確定數據的用戶使用許可權,確保數據安全。
(5) 數據字典設計:用數據字典描述資料庫的設計,便於維護和修改。
為了更好地組織數據和設計出實際應用資料庫,應該注意如下問題:
規范化地重組數據結構:對數據進行規范化表達,這在後面將會具體討論。
關系數據結構的建立:在進行了數據基本結構的規范化重組後,還必須建立整體數據的關系結構。這一步設計完成後資料庫和數據結構設計工作基本完成,只待系統實現時將數據分析和數據字典的內容代入到所設計的數據整體關系結構中,一個規范化資料庫系統結構就建立起來了。
建立關系數據結構涉及三方面內容:確定關聯的關鍵指標項並建立關聯表;確定單一的父系記錄結構;建立整個資料庫的關系結構。
(1)鏈接關系的確定
在進行了上述數據規范化重組後,已經可以確保每一個基本數據表(我們簡稱為表)是規范的,但是這些單獨的表並不能完整地反映事物,通常需要通過指標體系整體指標數據才能完整全面地反映問題。也就是說在這些基本表的各宇段中,所存儲的是同一事物不同側面的屬性。那麼計算機系統如何能知道哪些表中的哪些記錄應與其它表中的哪些記錄相對應,它們表示的是同一個事物呢?這就需要在設計數據結構時將這種各表之間的數據記錄關系確定下來。這種表與表之間的數據關系一般都是通過主或輔關鍵詞之間的連接來實現的。因為在每個表中只有主關鍵詞才能唯一地標識表中的這一個記錄值(因為根據第三範式的要求,表中其它數據欄位函數都依賴於主關鍵詞),所以將表通過關鍵詞連接就能夠唯一地標識出某一事物不同屬性在不同表中的存放位置。
(2)確定單一的父子關系結構
所謂確定單一的父系關系結構就是要在所建立的各種表中消除多對多(以下用M:N來表示)的現象,即設法使得所有表中記錄之間的關系呈樹狀結構(只能由一個主幹發出若干條分支,而不能有若干條主幹交錯發出若干條分支狀況)。所謂的「父系」就是指表的上一級關系表。消除多對多關系可以藉助於E-R圖的方法來解決,也可以在系統分析時予以注意,避免這種情況的發生。
消除這種M:N情況的辦法也很簡單,只需在二表之間增加一個表,則原來M:N的關系就改成了M:1,1:N的關系了。
確定數據資源的安全保密屬性:
一般DBMS都提供給我們自己定義數據安全保密性的功能。系統所提供的安全保密功能一般有8個等級(0-7級),4種不同方式(只讀、只寫、刪除、修改),而且允許用戶利用這8個等級的4種方式對每一個表自由地進行定義。
定義安全保密性的方法一般有如下幾種:
a.原則上所有文件都定義為4級,個別優先順序特別高的辦公室(終端或微機的入網賬號)可定義高於4級的級別,反之則定義為低於4的級別。
b.統計文件(表)和數據錄入文件一般只對本工作站定義為只寫方式,對其它工作站則定義為只讀方式。
c.財務等保密文件一般只對中工作站(如財務科等)定義為可寫、可改、可刪除方式,對其它工作站則定義為只讀方式,而且不是每個人都能讀,只有級別相同和高級別者才能讀。

2.1.2 資料庫設計範式分析
建立起一個良好的數據指標體系,是建立數據結構和資料庫的最重要的一環。一個良好的數據指標體系是建立DB的必要條件,但不是充分條件。我們完全可以認為所建指標體系中的一個指標類就是關系資料庫中的一個基本表,而這個指標類下面的一個個具體指標就是這個基本表中的一個欄位。但如果直接按照這種方式建庫顯然還不能算最佳。對於指標體系中數據的結構在建庫前還必須進行規范化的重新組織。
a. 數據組織的規范化形式
在數據的規范化表達中,一般將一組相互關聯的數據稱為一個關系(relation),而在這個關系下的每個數據指標項則被稱為數據元素(data element),這種關系落實到具體資料庫上就是基本表,而數據元素就是基本表中的一個欄位(field)。規范化表達還規定在每一個基本表中必須定義一個數據元素為關鍵字(key),它可以唯一地標識出該表中其它相關的數據元素。在規范化理論中表是二維的,它有如下四個性質:
l 在表中的任意一列上,數據項應屬於同一個屬性(如圖中每一列都存放著不同合同記錄的同一屬性數據)。
l 表中所有行都是不相同的,不允許有重復組項出現(如圖中每一行都是一個不同的合同記錄)。
l 在表中,行的順序無關緊要(如圖中每行存的都是合同記錄,至於先放哪一個合同都沒關系)。
l 在表中,列的順序無關緊要,但不能重復(如圖中合同號和合同名誰先誰後都沒關系,但二者不可重復或同名)。
在對表的形式進行了規范化定義後,數據結構還有五種規范化定義,定名為規范化模式,稱為範式。在這五種範式中,一般只用前三種,對於常用系統就足夠了。而且這五種範式是「向上兼容」的,即滿足第五範式的數據結構自動滿足一、二、三、四範式,滿足第四範式的數據結構自動滿足第一、二、三範式,……,依此類推。
第一範式(first normal form,簡稱1st NF)就是指在同一表中沒有重復項出現,如果有則應將重復項去掉。這個去掉重復項的過程就稱之為規范化處理。在本文所討論的開發方法里,1st NF實際上是沒有什麼意義的。因為我們按規范化建立的指標體系和表的過程都自動保證了所有

⑵ 急!高分求達人幫做SQL Server資料庫設計

下述十四個技巧,是許多人在大量的資料庫分析與設計實踐中,逐步總結出來的。對於這些經驗的運用,讀者不能生幫硬套,死記硬背,而要消化理解,實事求是,靈活掌握。並逐步做到:在應用中發展,在發展中應用。

1. 原始單據與實體之間的關系

可以是一對一、一對多、多對多的關系。在一般情況下,它們是一對一的關系:即一張原始單據對應且只對應一個實體。在特殊情況下,它們可能是一對多或多對一的關系,即一張原始單證對應多個實體,或多張原始單證對應一個實體。這里的實體可以理解為基本表。明確這種對應關系後,對我們設計錄入界面大有好處。

〖例1〗:一份員工履歷資料,在人力資源信息系統中,就對應三個基本表:員工基本情況表、社會關系表、工作簡歷表。這就是「一張原始單證對應多個實體」的典型例子。

2. 主鍵與外鍵

一般而言,一個實體不能既無主鍵又無外鍵。在E?R 圖中, 處於葉子部位的實體, 可以定義主鍵,也可以不定義主鍵(因為它無子孫), 但必須要有外鍵(因為它有父親)。

主鍵與外鍵的設計,在全局資料庫的設計中,佔有重要地位。當全局資料庫的設計完成以後,有個美國資料庫設計專家說:「鍵,到處都是鍵,除了鍵之外,什麼也沒有」,這就是他的資料庫設計經驗之談,也反映了他對信息系統核心(數據模型)的高度抽象思想。因為:主鍵是實體的高度抽象,主鍵與外鍵的配對,表示實體之間的連接。

3. 基本表的性質

基本表與中間表、臨時表不同,因為它具有如下四個特性:

(1) 原子性。基本表中的欄位是不可再分解的。

(2) 原始性。基本表中的記錄是原始數據(基礎數據)的記錄。

(3) 演繹性。由基本表與代碼表中的數據,可以派生出所有的輸出數據。

(4) 穩定性。基本表的結構是相對穩定的,表中的記錄是要長期保存的。

理解基本表的性質後,在設計資料庫時,就能將基本表與中間表、臨時表區分開來。

4. 範式標准

基本表及其欄位之間的關系, 應盡量滿足第三範式。但是,滿足第三範式的資料庫設計,往往不是最好的設計。為了提高資料庫的運行效率,常常需要降低範式標准:適當增加冗餘,達到以空間換時間的目的。

〖例2〗:有一張存放商品的基本表,如表1所示。「金額」這個欄位的存在,表明該表的設計不滿足第三範式,因為「金額」可以由「單價」乘以「數量」得到,說明「金額」是冗餘欄位。但是,增加「金額」這個冗餘欄位,可以提高查詢統計的速度,這就是以空間換時間的作法。

在Rose 2002中,規定列有兩種類型:數據列和計算列。「金額」這樣的列被稱為「計算列」,而「單價」和「數量」這樣的列被稱為「數據列」。

表1 商品表的表結構

商品名稱 商品型號 單價 數量 金額

電視機 29? 2,500 40 100,000

5. 通俗地理解三個範式

通俗地理解三個範式,對於資料庫設計大有好處。在資料庫設計中,為了更好地應用三個範式,就必須通俗地理解三個範式(通俗地理解是夠用的理解,並不是最科學最准確的理解):

第一範式:1NF是對屬性的原子性約束,要求屬性具有原子性,不可再分解;

第二範式:2NF是對記錄的惟一性約束,要求記錄有惟一標識,即實體的惟一性;

第三範式:3NF是對欄位冗餘性的約束,即任何欄位不能由其他欄位派生出來,它要求欄位沒有冗餘.

沒有冗餘的資料庫設計可以做到。但是,沒有冗餘的資料庫未必是最好的資料庫,有時為了提高運行效率,就必須降低範式標准,適當保留冗餘數據。具體做法是:在概念數據模型設計時遵守第三範式,降低範式標準的工作放到物理數據模型設計時考慮。降低範式就是增加欄位,允許冗餘。

6. 要善於識別與正確處理多對多的關系

若兩個實體之間存在多對多的關系,則應消除這種關系。消除的辦法是,在兩者之間增加第三個實體。這樣,原來一個多對多的關系,現在變為兩個一對多的關系。要將原來兩個實體的屬性合理地分配到三個實體中去。這里的第三個實體,實質上是一個較復雜的關系,它對應一張基本表。一般來講,資料庫設計工具不能識別多對多的關系,但能處理多對多的關系。

〖例3〗:在「圖書館信息系統」中,「圖書」是一個實體,「讀者」也是一個實體。這兩個實體之間的關系,是一個典型的多對多關系:一本圖書在不同時間可以被多個讀者借閱,一個讀者又可以借多本圖書。為此,要在二者之間增加第三個實體,該實體取名為「借還書」,它的屬性為:借還時間、借還標志(0 表示借書,1表示還書),另外,它還應該有兩個外鍵(「圖書」的主鍵,「讀者」的主鍵),使它能與「圖書」和「讀者」連接。

7. 主鍵PK的取值方法

PK是供程序員使用的表間連接工具,可以是一無物理意義的數字串, 由程序自動加1來實現。也可以是有物理意義的欄位名或欄位名的組合。不過前者比後者好。當PK是欄位名的組合時,建議欄位的個數不要太多,多了不但索引佔用空間大,而且速度也慢。

8. 正確認識數據冗餘

主鍵與外鍵在多表中的重復出現, 不屬於數據冗餘,這個概念必須清楚,事實上有許多人還不清楚。非鍵欄位的重復出現, 才是數據冗餘!而且是一種低級冗餘,即重復性的冗餘。高級冗餘不是欄位的重復出現,而是欄位的派生出現。

〖例4〗:商品中的「單價、數量、金額」三個欄位,「金額」就是由「單價」乘以「數量」派生出來的,它就是冗餘,而且是一種高級冗餘。冗餘的目的是為了提高處理速度。只有低級冗餘才會增加數據的不一致性,因為同一數據,可能從不同時間、地點、角色上多次錄入。因此,我們提倡高級冗餘(派生性冗餘),反對低級冗餘(重復性冗餘)。

9. E--R圖沒有標准答案

信息系統的E--R圖沒有標准答案,因為它的設計與畫法不是惟一的,只要它覆蓋了系統需求的業務范圍和功能內容,就是可行的。反之要修改E-- R圖。盡管它沒有惟一的標准答案,並不意味著可以隨意設計。好的E?R圖的標準是:結構清晰、關聯簡潔、實體個數適中、屬性分配合理、沒有低級冗餘。

10. 視圖技術在資料庫設計中很有用

與基本表、代碼表、中間表不同,視圖是一種虛表,它依賴數據源的實表而存在。視圖是供程序員使用資料庫的一個窗口,是基表數據綜合的一種形式, 是數據處理的一種方法,是用戶數據保密的一種手段。為了進行復雜處理、提高運算速度和節省存儲空間, 視圖的定義深度一般不得超過三層。若三層視圖仍不夠用, 則應在視圖上定義臨時表, 在臨時表上再定義視圖。這樣反復交迭定義, 視圖的深度就不受限制了。

對於某些與國家政治、經濟、技術、軍事和安全利益有關的信息系統,視圖的作用更加重要。這些系統的基本表完成物理設計之後,立即在基本表上建立第一層視圖,這層視圖的個數和結構,與基本表的個數和結構是完全相同。並且規定,所有的程序員,一律只准在視圖上操作。只有資料庫管理員,帶著多個人員共同掌握的「安全鑰匙」,才能直接在基本表上操作。請讀者想想:這是為什麼?

11. 中間表、報表和臨時表

中間表是存放統計數據的表,它是為數據倉庫、輸出報表或查詢結果而設計的,有時它沒有主鍵與外鍵(數據倉庫除外)。臨時表是程序員個人設計的,存放臨時記錄,為個人所用。基表和中間表由DBA維護,臨時表由程序員自己用程序自動維護。

12. 完整性約束表現在三個方面

域的完整性:用Check來實現約束,在資料庫設計工具中,對欄位的取值范圍進行定義時,有一個Check按鈕,通過它定義欄位的值城。參照完整性:用PK、FK、表級觸發器來實現。用戶定義完整性:它是一些業務規則,用存儲過程和觸發器來實現。

13. 防止資料庫設計打補丁的方法是「三少原則」

(1) 一個資料庫中表的個數越少越好。只有表的個數少了,才能說明系統的E--R圖少而精,去掉了重復的多餘的實體,形成了對客觀世界的高度抽象,進行了系統的數據集成,防止了打補丁式的設計;

(2) 一個表中組合主鍵的欄位個數越少越好。因為主鍵的作用,一是建主鍵索引,二是做為子表的外鍵,所以組合主鍵的欄位個數少了,不僅節省了運行時間,而且節省了索引存儲空間;

(3) 一個表中的欄位個數越少越好。只有欄位的個數少了,才能說明在系統中不存在數據重復,且很少有數據冗餘,更重要的是督促讀者學會「列變行」,這樣就防止了將子表中的欄位拉入到主表中去,在主表中留下許多空餘的欄位。所謂「列變行」,就是將主表中的一部分內容拉出去,另外單獨建一個子表。這個方法很簡單,有的人就是不習慣、不採納、不執行。

資料庫設計的實用原則是:在數據冗餘和處理速度之間找到合適的平衡點。「三少」是一個整體概念,綜合觀點,不能孤立某一個原則。該原則是相對的,不是絕對的。「三多」原則肯定是錯誤的。試想:若覆蓋系統同樣的功能,一百個實體(共一千個屬性) 的E--R圖,肯定比二百個實體(共二千個屬性) 的E--R圖,要好得多。

提倡「三少」原則,是叫讀者學會利用資料庫設計技術進行系統的數據集成。數據集成的步驟是將文件系統集成為應用資料庫,將應用資料庫集成為主題資料庫,將主題資料庫集成為全局綜合資料庫。集成的程度越高,數據共享性就越強,信息孤島現象就越少,整個企業信息系統的全局E?R圖中實體的個數、主鍵的個數、屬性的個數就會越少。

提倡「三少」原則的目的,是防止讀者利用打補丁技術,不斷地對資料庫進行增刪改,使企業資料庫變成了隨意設計資料庫表的「垃圾堆」,或資料庫表的「大雜院」,最後造成資料庫中的基本表、代碼表、中間表、臨時表雜亂無章,不計其數,導致企事業單位的信息系統無法維護而癱瘓。

「三多」原則任何人都可以做到,該原則是「打補丁方法」設計資料庫的歪理學說。「三少」原則是少而精的原則,它要求有較高的資料庫設計技巧與藝術,不是任何人都能做到的,因為該原則是杜絕用「打補丁方法」設計資料庫的理論依據。

14. 提高資料庫運行效率的辦法

在給定的系統硬體和系統軟體條件下,提高資料庫系統的運行效率的辦法是:

(1) 在資料庫物理設計時,降低範式,增加冗餘, 少用觸發器, 多用存儲過程。

(2) 當計算非常復雜、而且記錄條數非常巨大時(例如一千萬條),復雜計算要先在資料庫外面,以文件系統方式用C++語言計算處理完成之後,最後才入庫追加到表中去。這是電信計費系統設計的經驗。

(3) 發現某個表的記錄太多,例如超過一千萬條,則要對該表進行水平分割。水平分割的做法是,以該表主鍵PK的某個值為界線,將該表的記錄水平分割為兩個表。若發現某個表的欄位太多,例如超過八十個,則垂直分割該表,將原來的一個表分解為兩個表。

(4) 對資料庫管理系統DBMS進行系統優化,即優化各種系統參數,如緩沖區個數。

(5) 在使用面向數據的SQL語言進行程序設計時,盡量採取優化演算法

總之,要提高資料庫的運行效率,必須從資料庫系統級優化、資料庫設計級優化、程序實現級優化,這三個層次上同時下功夫。

⑶ 資料庫設計依據

中國典型地質景觀成因及全球對比

表6-5 景區和景點數據實例

中國典型地質景觀成因及全球對比

⑷ UG二次開發與資料庫應用基礎與典型範例的目錄

第1章UG二次開發概述
1.1uG簡介
1.2uG軟體的二次開發
1.2.1uG二次開發概述
1.2.2uG二次開發工具
1.3一個簡單的例子
第2章UG/OpenAPI基礎知識
2.1概述
2.2uG/OpenAPI數據類型、函數及表達式
2.2.1uG/OpenAPI數據類型
2.2.2uG/OpenAPI函數
2.2.3uG/OpenAPI表達式
2.3uG/OpenAPI.的開發模式
2.4菜單、工具條的製作
2.4.1uG菜單文件及語法
2.4.2uG工具條文件及語法
2.5uIStyler對話框設計
2.5.1uG對話框的建立
2.5.2控制項屬性的設置
2.5.3回調函數
2.5.4對話框界面
2.5.5控制項的訪問
2.6uG/OpenAPI在矩形花鍵參數化建模中的應用實例
第3章UG/OpeflGrip開發基礎
3.1概述
3.2uG/OpenGdp數據類型、運算符及表達式
3.2.1常量、變數與數組、子集
3.2.2數據類型
3.2.3運算符、內部函數及表達式
3.3常用幾何體的生成
3.3.1點的生成及實例
3.3.2直線的生成及實例
3.3.3圓的生成及實例
3.3.4B樣條曲線的生成及實例
3.3.5實體的生成及實例
3.3.6實體的運算及實例
3.4控制語句
3.4.1轉移語句及實例
3.5.1變換及變換矩陣
3.5.2變換矩陣的UG/OpenGrip買現
3.5.3變換的UG/OpenGrip實現及實例
3.6人機交互
3.6.1響應變數
3.6.2MESSG語句
3.6.3PARAM語句
3.6.4TEXT語句
3.6.5CHOOSE語句
3.6.6POS語句
3.6.7GPOS語句
3.7uG/OpenGRip開發環境
3.8uG/OpenGrip在法蘭參數化建模中的應用實例
第4章零件參數化系統的開發
4.1參數化設計概述
4.2uGCAD中的參數化設計方法
4.2.1利用UG/OpenAPI進行參數化設計
4.2.2利用UG/OpenGrip進行參數化設計
4.2.3利用UG/OpenAPI和UG/OpenGrip進行參數化設計
4.3漸開線直齒輪參數化設計實例
4.3.1uG應用開發環境設置
4.3.2菜單設計
4.3.3UIStyler對話框設計
4.3.4使用Visualc++建立應用程序框架
4.3.5用UG/OpenGrip編寫齒輪參數化設計程序
4.3.6編譯、連接
4.3.7運行過程
4.4菜單中ACTIONS調用方式
4.4.1調用對話框
4.4.2調用應用程序
4.5常用程序入口
4.5.1ufsta()
4.5.2ufusr()
4.5.3用戶自定義入口
第5章資料庫技術在UG開發中的應用
5.1概述
5.2資料庫基礎知識
5.2.1資料庫、資料庫管理系統和資料庫系統.
5.2.2數據模型
5.2.3資料庫的表結構設計
5.3客戶機/伺服器(C/S)結構開發模式
5.3.1客戶機/伺服器結構
5.3.2ODBC資料庫訪問介面
5.4Visualc++平台上基於ODBC的資料庫系統開發
……
第6章漸開線斜齒輪參數化設計系統開發實例
第7章基於UG模型文件管理系統開發實例
第8章齒輪模擬加工系統開發實例

⑸ 資料庫設計主要包括哪幾部分,分別包括哪些內容

資料庫設計主要包括需求分析、概念結構設計、邏輯結構設計、物理結構設計、資料庫的實施和資料庫的運行和維護,具體內容如下:

1、需求分析

內容:調查和分析用戶的業務活動和數據的使用情況,弄清所用數據的種類、范圍、數量以及它們在業務活動中交流的情況,確定用戶對資料庫系統的使用要求和各種約束條件等,形成用戶需求規約。

2、概念設計

內容:對用戶要求描述的現實世界,通過對其中諸處的分類、聚集和概括,建立抽象的概念數據模型。這個概念模型應反映現實世界各部門的信息結構、信息流動情況、信息間的互相制約關系以及各部門對信息儲存、查詢和加工的要求等。

3、邏輯設計

內容:主要工作是將現實世界的概念數據模型設計成資料庫的一種邏輯模式,即適應於某種特定資料庫管理系統所支持的邏輯數據模式。與此同時,可能還需為各種數據處理應用領域產生相應的邏輯子模式。這一步設計的結果就是所謂「邏輯資料庫」。

4、物理設計

內容:根據特定資料庫管理系統所提供的多種存儲結構和存取方法等依賴於具體計算機結構的各項物理設計措施,對具體的應用任務選定最合適的物理存儲結構(包括文件類型、索引結構和數據的存放次序與位邏輯等)、存取方法和存取路徑等。

5、驗證設計

內容:收集數據並具體建立一個資料庫,運行一些典型的應用任務來驗證資料庫設計的正確性和合理性。一般,一個大型資料庫的設計過程往往需要經過多次循環反復。當設計的某步發現問題時,可能就需要返回到前面去進行修改。

6、運行與維護設計

內容:在資料庫系統正式投入運行的過程中,必須不斷地對其進行調整與修改。除了關系型資料庫已有一套較完整的數據範式理論可用來部分地指導資料庫設計之外,尚缺乏一套完善的資料庫設計理論、方法和工具,以實現資料庫設計的自動化或互動式的半自動化設計。

(5)資料庫設計典型實例擴展閱讀:

重要性

1、有利於資源節約

對計算機軟體資料庫設計加以重視不僅可減少軟體後期的維修,達到節約人力與物力的目的,同時還有利於軟體功能的高效發揮。

2、有利於軟體運行速度的提高

高水平的資料庫設計可滿足不同計算機軟體系統對於運行速度的需求,而且還可充分發揮並實現系統功能。計算機軟體性能提高後,系統發出的運行指令在為用戶提供信息時也將更加快速有效,軟體運行速度自然得以提高。

3、有利於軟體故障的減少

加強資料庫設計可有效減少軟體故障的發生幾率,推動計算機軟體功能的實現。

⑹ 資料庫設計,地鐵客票管理系統的實體及相關屬性

摘要圖書館管理系統,圖書管理系統是典型的管理信息系統(MIS),其開發主要包括建立和維護,以及後端資料庫前端應用程序開發方面的發展。對於前者要求建立起數據一致性和完整性,數據安全性好的庫。對於後者則要求應用程序功能完備,使用方便的特點。因此,結合開放式圖書館為MS SQL Server2000資料庫管理系統,SQL語言原理,Delphi應用程序設計,Delphi資料庫技術進行了較深入的研究和應用,主要完成對圖書管理系統的需求分析,功能的要求模塊劃分,資料庫模式分析,並由此設計了資料庫結構和應用程序。結果證明,該系統運行時,這篇文章是為了滿足三方面的圖書管理系統借款,圖書館工作人員和高級管理人員的需求。資料庫應用系統開發和圖書管理系統,扼要地介紹和圖書館管理系統的開發工作分析的第一章進行。資料庫設計和SQL語言的第二章採用了系統的分析,為深入資料庫應用基礎的了解。第三章研究的具體的開發工具Delphi的6.0,推出了其系統的資料庫組件,在Delphi資料庫編程等關鍵技術的SQL語言的應用。第四章分析了應用程序庫管理信息系統,資料庫設計理論是按照循序漸進的系統需求說明書,局部ER圖,全局ER圖給出的系統模式,子模式之間的關系,利用MS SQL Server2000中建立了第一個資料庫五章具體的方案設計,具體的操作許可權分為三類用戶,這三個介面的設計。實現了資料庫表的瀏覽記錄的添加,刪除和,生成報表,並實現了連接操作多個資料庫表,實現了多條件查詢和模糊查詢,靈活實現了對不可更新的查詢結果集的更新操作,以實現從操作主表,和密碼維護功能,最後,該系統還可以與資料庫結構來操作導入任何資料庫。設計採用德爾福6,MS SQL Server2000資料庫技術的強大功能,以提高編程效率和可靠性的優勢。關鍵詞:資料庫,SQL語言,MS SQL Server中,的Delphi6,資料庫組件,圖書管理,表格,列表視圖組件目錄摘要......................... ........................................... ...... ...............我第一章................................ ..............................................1§1.1資料庫應用程序開發簡介............ ................................... .......1§1.2圖書館管理系統..................................... ..........................4§1.3的主要工作是做................ ............................................ 6第二章資料庫的理論基礎.................................................. ................ 7§2.1資料庫系統的設計和分析範式......................... ..........................7§2.2SQL語言介紹.................. ....................................... ........... ....... 112.2.1基於SQL ...................................... ..................................... 112.2.2 SQL語句........ ................... ............................... ................. 12第三章應用程序開發工具........................... ..............................16§3.1Delphi6.0中VCL ............. ................................16§3.2資料庫組件體系結構組件引入了.......... .................................................. .........在Delphi應用程序17§3.3 SQL語言................................. ..................18§3.4MS SQL Server說明......................... .......................... 22 .........第四章庫管理系統的設計和分析應用需求分析... ............................................. ..... ...........................................24§4.1.... .................24§4.2系統功能模塊........................... ....................................29§4.3系統資料庫設計........ ................... ............................... ........ 29章圖書管理系統的應用設計................................... .......37§5.1系統窗體模塊............... ...................... .............................形式的37§5.2數據模塊............ .................................................. 。37§5.3閃屏實現........................................... ..........................38§5.4實現用戶登錄表單................ ....................... ........................39§5.5用戶密碼驗證,實現實現的一種形式......................................... ................39§5.6借款人服務模塊......... ................... ................................ 405.6.1實現.............. ...........................................圖書搜索功能415.6.2借款人登錄實現的功能............................................. ............ 425.6.3借款人的貸款條件功能實現............................. ...................... 435.647§5.7人員0.4借款人的個人資料維護功能的實現............... .............................. - 借書/回報的實現模塊............. ....................... ......... 495.7.1工作人員圖書借閱功能的實現......... .................................... 505.7.2工作人員的職能,實現圖書的回報... .................................實現................ ................................... .........53§5.8模塊545.8。 1館員館員庫管理功能,實現........................ .................. 555.8.2圖書館員和管理員的工作管理職能,實現........................ 585.8.3圖書管理員實現的書籍和雜志類的功能... .........實現............... 605.8.4館員借款人的管理功能.................. ..................... 625.8.5庫維護 - 借款人的管理功能.................... 。..................維持身份625.8.6庫函數執行...................... ....................... 645.8.7庫借款人統計實現.................... .... ............... 655.8.8借閱圖書館的統計數據過時的記錄來實現功能的實現................... ...........67§5.9信息顯示系統................................. ............ ............ 68第六章結論...................... .................................................. 69致謝............................................. ... .......................................... 70參考書目70首先.... .................................................. .................................章介紹§1.1資料庫應用程序開發前,資料庫應用程序開發的介紹,資料庫開發基本概念應理解,結構,資料庫應用程序開發的步驟開發系統和資料庫的方法應該有一個很清楚的了解和認識。資料庫應用程序開發的目標是建立一個長期的,以滿足用戶的需求。主要工藝發展是:理解用戶的需求,然後把它們變成有效的資料庫設計。這些設計轉化為實際的資料庫,並且這些資料庫具有全功能,高性能的應用程序。資料庫技術在計算機軟體研究附近一直是一個很重要的話題,在上世紀60年代生產的,30年以上的資料庫技術得到了迅速發展,並已形成了比較完整的理論體系和大量實用的系統。並且,在近幾年,隨著萬維網(WWW)的浪涌和互聯網技術的迅速發展,因此,當在資料庫技術已經成為最熱門的技術之一。 1.1.1資料庫圖1.1示出了資料庫系統的主要組件。由DBMS(資料庫管理系統)的過程,DBMS開發商和直接或間接用戶通過使用應用程序的資料庫。它主要包括四個要素:用戶數據,元數據,索引和應用元數據。 1.1.1.1用戶數據目前,該用戶數據的最主流的資料庫管理系統被表示為關系。現在考慮的數據表之間的關系。表中的列包含的欄位或屬性,該表的相應行中包含的記錄的商業環境中的實體。不是所有的關系也具有比一些的更結構化之間的關系的一些其他關系的要求相一致。第二章描述了一種生產結構良好的關系的過程中,所謂的正常化。為了比較的關系,圖書和圖書借貸關系的結構之間的關系的好與差結構的區別在此設計圖書館管理系統為例來說明設計的關系,如果R1(借書證號,姓名,性別,身份證號碼,身份證,電話號碼,書號,書名,書類別,作者,出版社,出版日期,票據,價格,數量);它具有相對於數據的兩個不同的主題的關系的問題,這是借書籍和書籍。當以這種方式的關系組織之更改後,可能會出現問題。由於借款人可以借閱書籍和更多的書,如果一個借款人的書場發生(如電話)的變化,它借書記錄(可能更多)將不得不改變,這是不好的。因此,這兩個數據之間的關系表示的更好。現在,如果一本書的借款人改變了它的電話號碼,只有關系(表)用戶需要改變相應的行。當然,以產生一個顯示名稱和借款人的書籍電話報告中,我們需要這條線兩個表一起。結果表明,該關系被存儲時,在報告生成的時間將它們結合起來,而不是把它們存儲在一個更好的合成表。用戶(庫卡號,姓名,性別,身份證號碼,身份證,電話,)一書(ISBN,書名,書類別,作者,出版社,出版日期,票據,價格,數量)1.1.1.2元資料庫是自-describing數據,這意味著它包含自己的結構的說明中,描述此結構被稱為元數據。因為DBMS產品被用於存儲和操作表,所以大部分的產品存儲在表中的形式的元數據,有時叫做系統表。這些系統表存儲在資料庫中的情況下的表,每個表指出,列數,該列是主鍵中,描述了各列的數據類型的其它部分,這也存儲索引,關鍵字,規則和資料庫結構。存儲在元數據中的表有效不僅對DBMS的,對用戶來說也是便利的,因為它們可以使用相同的用戶數據的查詢的查詢工具來查詢的元數據。在第二章中介紹了SQL語言,可用於元數據和用戶數據。 1.1.1.3第三種類型的索引數據,以提高資料庫的性能和可訪問的,此數據通常被稱為開銷數據,雖然有時用其它類型的數據結構,諸如鏈表的,但它仍然是主要的索引。該指數可以用來排序和快速訪問的數據。在這里,在我的媒體庫管理信息系統的書表為例來說明。它假定磁碟上的數據是按「國際標准書號」遞增的順序,用戶想列印一本書的報表數據按「書名」排序。為此,所有的數據需要從源表中提取和梳理,除非該表較小,否則它是一個非常耗時的過程。或者,您可以在「書名」欄位創建一個索引,按照「圖書名稱」排序索引項,所以索引條目可以讀出,並以訪問的數據手冊中。指數快速訪問的數據。例如,用戶要對這些學生訪問表的書「圖書類別」值「01」。如果沒有索引,則必須搜索整個源表;但有索引之後,索引項可以發現,並用它來接所有相應的行。指數排序和搜索是有益的,但它是要付出代價的。當書每次改變表中的行的時候,該指數必須改變,這意味著該索引不是隨機的,它應該被保存時確實需要的。 1.1.1.4存儲資料庫中的數據的第四個應用程序元數據是應用程序的元數據,它被用來存儲用戶表格,報告,查詢和其他形式的查詢組件。並非所有的DBMS支持的應用程序組件,支持的DBMS部件不一定所有的結構存儲在資料庫中的應用程序元數據的組件。然而,大多數現代DBMS產品存放這樣的數據作為資料庫的一部分。在一般情況下,資料庫開發者和用戶不直接訪問該應用程序的元數據,與此相反,它們是處理通過資料庫管理系統工具這些數據。 MS SQL Server2000中以元數據的形式,以支持應用程序,存儲的過程,等等。 1.1.2資料庫管理系統資料庫管理系統(DBMS)是指在資料庫系統中的數據管理軟體系統。 DBMS是資料庫系統的核心部件。在資料庫上的所有操作,包括定義,更新和各種控制由DBMS進行。資料庫管理系統總是基於一個數據模型,它可以被看作是一個計算機系統上的某種DBMS數據模型實現的。根據數據模型,資料庫管理系統可分為層次,網眼,關系,面向對象的,等等。 MS SQL Server2000的是關系型資料庫管理系統。關系模型。關系模型的主要表現是一組具有外鍵關聯實體之間代表實體的二維表結構。這種關系模型是由若干個關系模式的集合。前面提到的等效關系模式的記錄類型,它被稱為關系的一個實例,每個關系實際上是一個兩維的形式。關系模型和確定的網格模型的最大電平是鍵,而不是一個指針導航數據,用戶簡單易懂的形式,不涉及存儲結構,獲得的技術和其他編程的細節。關系模型是一個數學模型。 SQL語言是關系資料庫的標准化語言,已被廣泛使用。如圖1.1所示,資料庫管理系統的特徵和功能可以被劃分成三個子系統:子系統設計工具,工作系統和DBMS引擎。設計子系統有一系列的工具,以方便資料庫及其應用程序創建。它通常包含生成表格,表單,查詢和報表工具。 DBMS產品還提供編程語言和編程語言界面。跑分處理子系統的設計開發應用程序組件。運行處理器,用於處理包含互動式表單和資料庫,以及回答查詢和列印報告的數據。 DBMS的發動機接受來自其他兩個組件的請求,並將它們成對操作系統命令來讀取和物理介質上寫數據轉換。 DBMS引擎還涉及事務管理,鎖定,備份和恢復。 1.1.3創建資料庫1.1.3.1資料庫模式定義資料庫架構,表,關系,域名和業務規則資料庫的結構。是資料庫模式設計,資料庫和應用程序是在此基礎上構建的。域是值的集合?人們可能有。必須確定每個表的每列的域。除了數據的物理格式,還需要確定一些欄位是否是表是唯一的。資料庫模式的最後一個元素業務規則,這是為了在商業活動的限制資料庫和資料庫應用中得到反映。業務規則是該模式的重要組成部分,因為他們指定的任何到達DBMS引擎數據的變化,讓數據值必須滿足的約束條件。無論變更請求是通過用戶表單無效數據,查詢/請求或應用程序,資料庫管理系統應予以拒絕。不幸的是,不同的DBMS產品使用不同的方法來實現業務規則。在一些情況下,DBMS產品不必實現業務規則的必要能力,必須把它們編程到應用程序代碼。創建定義的聯系人資料庫應用程序,包括表單,查詢,報表,菜單和應用程序表1.1.3.3 1.1.3.2 1.1.4應用程序組件。在當今信息時代§1.2圖書館管理系統是快速發展的時代。離不開在各行各業的信息處理,它被廣泛應用於計算機信息管理系統的環境。最大的好處是,電腦可以使用它來管理信息。計算機信息控制的使用,不僅提高了工作效率,同時也大大提升了其安全性。尤其對於復雜的信息管理,計算機能夠充分發揮它的優勢。計算機信息管理和信息管理系統的發展密切相關,該系統的開發是為系統管理的先決條件。該系統是管理圖書館信息而設計的。作為信息資源集散地的圖書館,圖書借閱和包含了大量的信息和數據管理,今天的用戶數據范圍內,有很多庫都開始初步,甚至沒有使用計算機信息化管理。據調查,他們的信息管理以前主要形式是基於手工處理文字,表格等紙介質,借閱圖書(如圖書館幾天,多天的時間庫的數量)的統計數據之類的經常被用來驗證進行借款權的借款人人工檢查,並用手工計算和其他貸款的天數借書證,是手寫的。數據處理的工作量,容易出錯;由於各種數據,不易丟失,不易發現。總體而言,缺乏系統化,規范化的信息管理工具。雖然有些圖書館有電腦,但尚未用於信息管理,沒有發揮其效能,資源閑置比較突出,這是基本的環境管理信息系統的開發。手動數據處理,工作量,誤碼率,不容易改變的錯誤。圖書館借閱圖書採取手工管理人造的情況,因為更多信息,圖書借閱管理信息混亂和復雜的;一般貸款情況記錄在庫卡上的文件內容的書籍和記錄數量,圖書館工作人員和管理人員不僅是它更清楚,隨著時間的推移,如要進行進一步調查,已在許多材料閱讀,檢索,導致查詢費時又費力。如果您想預訂一個很久以前作出的改變,甚至更加困難。基於這個問題,我覺得有必要為圖書館管理系統,使圖書管理規范化,系統化,程序,避免隨意圖書館管理,提高速度和信息處理,及時,准確,有效的圖書查詢的准確性和的情況。 §1.1系統正常工作1)了解目前的情況2)Delphi6.0中編程基礎3)MS SQL Server的基地4)資料庫應用開發工具設計;設計界面5)資料庫的發展。某些功能已經達到驚人的l資料庫的數據和指令顯示;升查詢多個條件,多個記錄檢索,模糊查詢; l數據存儲格式導入數據文件某種形式,通過存儲數據完整性校驗l資料庫安全設計;; L型的資料庫,數據介面,介面設計資料庫。在本文中,這項工作由資料庫應用系統的介紹§1.3局部結構,簡單介紹的發展,圖書館管理信息系統的設計功能和任務分析完成。第二章介紹資料庫設計和分析範式,並介紹了SQL語言系統的設計和應用做了鋪墊的理解。該系統的第三章介紹了Delphi 6.0資料庫編程,SQL語言在Delphi 6.0,MS SQL Server的基礎。第四章分析了應用的圖書管理系統,設計了系統的資料庫結構,根據需求和系統的功能進行了劃分和細化。第五章已經根據第四章使用MSSQL Server2000的和Delphi 6.0的具體應用設計成果的設計。經驗摘要部分描述的設計和編程經驗,並指出了在系統設計的缺陷和改進的方向。對於一個成功的資料庫的信息管理系統的理論基礎的第二章是基於一些條件,並且該資料庫的非常重要的條件和關鍵技術之一。信息管理系統的資料庫設計包括5個步驟:資料庫需求分析,概念設計,邏輯設計,物理設計和載荷試驗。任務(1)資料庫需求分析是企業文件管理到數據流中,主題之間劃定邊界,得出DFD圖的數據流,並完成數據字典。 (2)概念設計的任務是從DFD出發,本主題中得出實體 - 圖表,表格和列表勾勒出各種實體和關系。 (3)從E-R圖相應的大綱表視圖,邏輯設計任務來確定各實體之間的關系和屬性表名。 (4)物理設計任務是確定所有屬性的類型,范圍寬,設計的主鍵基表,所有的表名和欄位名英國文化(現在很多軟體都支持中國的領域,如MS SQL伺服器我只是用中國的欄位名),建庫,實現物理的,完整的物理資料庫設計字典。 (5)負載測試程序在整個測試的整個過程中,整個輸入,,查詢處理負荷試驗可以被認為是該資料庫。要設計一個好的信息管理系統資料庫,除滿足系統功能的要求,還必須堅持以下原則:2號基本表的,就更好了。 2號主鍵,就更好了。鍵工具被連接在表之間,表之間的更簡單的少的主鍵。數2欄位成為可能。 2所有表的基本設計應盡可能與第三範例線。資料庫設計,以及如何處理多對多關系以及如何設計的主鍵,有兩個問題更加困難,重要的是要考慮的。下面我們重點從SQL,資料庫設計範式和查詢優化等方面的應用來分析這個問題,並實現關鍵技術和難點制度加以解決。 §2.1信息系統範式的主要任務資料庫系統的設計和分析是獲得通過大量的數據,這些數據必須存儲和管理大量數據的信息化管理需求。因此,建立了良好的數據結構和資料庫,使整個系統能夠快速,容易和精確地管理呼叫和所需的數據,它是衡量信息系統開發的質量的主要指標之一。 2.1.1資料庫系統設計資料庫設計是資料庫的邏輯設計,數據是關於某個分類,分組和邏輯層次結構組織系統是面向用戶的。資料庫設計需要各個部門的綜合企業數據存檔和數據需求,分析各種數據之間的關系,根據與DBMS提供的功能和信息,工具,設計適當大小的正確反映數據關系,以及較少的冗餘數據,訪問效率高的數據模型以滿足各種查詢的要求。資料庫設計步驟是:(1)資料庫結構的定義:當前資料庫管理系統(DBMS)支持某些聯機事務處理CLTP(負責交易的數據採集,處理,存儲)運營DBMS,有的可以支持數據倉庫,聯機分析處理一擊(指支持數據處理操作之一的決策)設有一個大型資料庫管理系統,一些關系型資料庫,並為面向對象的資料庫的一些支持。對於選定的資料庫管理系統,結構定義資料庫。 (2)數據表定義:數據結構定義表定義是指資料庫中的數據表,該數據表包含的邏輯結構:屬性名稱,類型,格式,預設值,驗證規則,是否一個關鍵字,它是否是空白。關系資料庫來嘗試按資料庫設計關系標准化要求,但為了使高效率,標准化程度應根據應用環境和條件來確定。數據表設計不僅要滿足數據存儲需求,同時也增加此類信息的數量,以反映工作職責,中間數據的欄位或臨時數據表。 (3)存儲設備和存儲空間組織:確定存儲位置,存儲路徑,和其它數據存儲設備,為的是如何以確保數據的完整性和一致性多個版本的備份解決方案。 (4)數據許可權設置:針對不同用戶的要求來確定用戶許可權的數據,確保數據安全。 (5)數據字典設計:數據字典描述了資料庫設計,易於維護和。為了更好地組織數據,並設計一個實際應用的資料庫中,我們應注意以下問題:標准化整理的數據結構:該數據是標准化的表達,將專門在後面討論。關系的數據結構:數據標准化基本結構的重組期間,它也必須建立的整體數據結構之間的關系。之後這一步完成資料庫設計和數據結構設計幾乎完整,系統只要當數據分析和數據字典的內容數據代入設計的整體關系結構來實現,一個標准化的資料庫系統的結構設置。建立一個關系數據結構涉及三個方面:確定關鍵指標有關的項目和表相關聯;確定一個記錄父系結構;建立整個資料庫的關系結構。 (1)確定的重組過程中數據的標准化之間的聯系,這已經能夠保證每一個基本數據表(我們簡稱為表)是常態,但這些單獨的表不能完全反映的事情,通常通過指標總體指標數據系統,以充分反映整體的問題。每個在基本段表,這些建築物被存儲在相同的硬幣特性的不同側面的。那麼,你如何知道哪個計算機系統,表中的記錄應該對應於其中記錄了另一個表,它們代表了同樣的事情?這就需要設計數據結構記錄該數據時,表之間的關系最終定稿。在關鍵字之間的主或從連接表之間的數據關系通常是由實現。因為每個表僅主密鑰來唯一地標識記錄在該值(因為,根據該表的第三範例的要求,其他的數據欄位的功能是依賴於主關鍵字),因此通過關鍵詞連接表將能夠唯一地標識一個東西在不同的表不同的屬性在所述存儲位置。 (2)確定一個單一結構的侍叫建立的結構之間的單個父系關系是消除多對多(以下,M:N表示),在試圖使所有的現象中創建的各種表格的在表中的記錄它呈樹形結構之間的關系(一個數僅由一個中繼發出分支的,但交錯發布了大量的分支條件不能有多個中繼線)。所謂「父」,是指在桌子上關系表。您可以消除E-R圖的方法來解決的手段多的關系,注意也可以在系統中,以防止這種情況的發生進行分析。消除這種M:N情況下的做法很簡單,只需添加兩個表,原來的M之間的表:N的關系對並購改變:1,1:N的關系了。安全性和保密性屬性標識數據資源:一般DBMS可用來定義自己的數據安全性和保密性的特點。系統提供的安全功能一般有八級(0-7級),四種不同的方式(只讀,只寫,刪除,),而且還允許用戶利用這個八級的優勢四種方式為自由定義每個表。的方法的安全性和保密性的定義通常概括如下:一。所有文件都在四個原則的定義,尤其是高優先順序的個人辦公室(終端或微機網路帳戶)定義高於4的水平,否則定義為小於4級灣統計文件(表)和數據輸入文件通常只對工作站被定義為只寫模式,在其他工作站被定義為只讀模式。 C。一個。

⑺ 基於GIS數字地質圖資料庫的組成

1.數字地質圖

傳統的紙質模擬地圖是根據地圖模型(map model),按照一定的數學法則、符號、制圖綜合原理和比例,將地球空間實體和現象的形狀、大小、相互位置、基本屬性等表示在二維平面上。「數字地圖」,簡單地說,就是存儲在計算機中數字化了的地圖。一般來講,數字地圖是以地圖資料庫為基礎,以數字形式存貯於計算機外存儲器上,並能在電子屏幕上實時顯示的可視地圖,又稱「屏幕地圖」或「瞬時地圖」。

(1)地質圖

「地質圖」乃是一切地質工作中的基本圖件,用規定的符號、不同的顏色、描繪一地區的地質現象,反映沉積岩、岩漿岩、變質岩、各類礦產、各種型式的地質構造線等,反映它們形成的時代、分布和相互關系,以三維空間的立體形狀表示在二維空間的平面上。金澤蘭等在《地質圖編匯法》中,提出地質圖是一種將出露在地表的地質構造現象按比例投影到平面圖(通常帶有地形等高線,即地形圖)上,並用規定的符號、色譜、花紋予以表示的圖件。它是為特定目的服務的、有選擇性地表示地質對象的時間和空間分布的符號化表現形式。在地質圖上表示的地質對象即可以根據地質屬性分類集合進行選擇,也可以按照地理范圍進行表示,一般情況下是兩者結合進行的。總的來說,地質圖是現實世界中地質客體在人腦中抽象的、具體的表達,是現實地質對象在圖紙上的映射。如圖7-11所示。

圖7-15 以對象為中心的面向對象數據模型實現圖形和屬性統一存儲

這種數據模型徹底解決了長期以來空間對象與其屬性數據,在物理上分離帶來的諸多難題,進而實現基於關系資料庫的GIS空間數據一與其他非空間關系數據一體化管理,給GIS系統開發、應用帶來了極大的便捷性。如利用空間引擎對空間與非空間數據進行操作,同時可以利用大型關系資料庫海量數據管理、事務處理(transaction)、記錄鎖定、並發控制、數據倉庫等功能。

4.GIS與數字地質圖資料庫的結合

GIS是分析和處理海量地理數據的通用技術,藉助GIS,基於大量綜合信息,可進行空間采樣,對構造演化、火成活動、沉積相、礦產形成、模擬區域地質演化等復雜問題進行時空和多元統計分析,對成礦預測和礦產勘查提供有力分析工具。在數據量充裕前提下,GIS分析具有定量、定時、定位的特點,可給出動態(不同時間、不同位置)結果。藉助深部與時間數據,GIS分析實際上可拓展到四維空間。

P.Gardenfors提出在客觀世界和符號表達之間存在著概念層,他將知識表達分為三個層次,即:亞概念層、概念層、符號層,通過亞概念層感知客觀世界,然後通過概念層將感知的內容抽象成為概念進行分類,將概念(分類)通過符號層表達出來。地理信息在概念層形成,在符號層表達,所以地理信息庫的建立就是通過概念層對地理空間(客觀世界)的抽象而形成地理信息概念空間,將該概念空間形式化後就成為本體化的地理信息空間,即可在計算環境下通過符號層(圖形)表達出來。

地質信息系統研究的關鍵問題之一,就是構造圖7-16中的地質模型,目的是通過有限的、不完全的並且含有各種雜訊的觀測數據來推斷地下空間的物質、能量的分布和流動情況。

圖7-16 地質認知過程的簡化示意圖

大部分礦產都不是暴露在表面,而是埋在地表深部。利用GIS的方法通過了解地表上層物質的空間分布,就可以判斷礦藏存在的可能性。在一個找礦預測區域往往已知部分礦區和礦點,這些礦區和礦點具有很多的空間屬性和地理屬性,要想很直觀的用以往普通的資料庫管理系統去把它表達出來,可謂耗時費力。而GIS的出現為礦產資源評價和管理提供了前所未有的評價工具與手段。GIS是採集、管理、處理、分析、顯示、輸出多種來源的與地理空間位置相關信息的計算機系統。隨著GIS與RS(遙感)、GPS(全球衛星定位系統)相結合的「3 S」集成以及計算機互聯網的迅速發展,GIS在地質找礦中將發揮更加重要的作用。

目前,GIS與地質空間資料庫的結合主要體現在以下幾點:

(1)建立地質礦產資源資料庫

描述礦產地屬性的數據內容繁雜,類別眾多,可分為屬性數據和空間數據,礦產地各類屬性信息認識、分析和評價該礦區也很重要。因此,地理空間信息在礦產資源管理中佔有非常重要的地位。地質礦產資料庫在GIS的支持下,結合礦產資源數據類型可建立多種地理空間資料庫和屬性資料庫,利用GIS先進的資料庫和圖庫管理對於各種地質圖件和數據的長期保存及修改變得容易。

(2)圖形顯示的直觀性和形象性

專題圖不僅是一種重要的研究手段,同時也能有效而直觀的反映研究成果。在地質資料庫基礎上,GIS可將各種數據或分析成果以專題圖的形式直觀而有效的顯示,並可進行人機互動式地設計、編輯、修改。在成果輸出方面,GIS能夠提供高質量的預測成果圖件,直觀清晰,一目瞭然。GIS的這些功能,能將各種礦產資源的文字描述與空間地理位置有效的結合與表達,大大提高了礦產資源數據的直觀性和形象性。

(3)空間分析功能

GIS的空間分析功能是GIS區別於其他計算機系統的主要標志。地質資料庫系統涉及GIS多種空間分析功能,結合地質「專家知識」,為大范圍大區域內實現快速、准確的成礦預測創造了有利條件。GIS吸取專家的經驗及知識較容易,並且進行成礦預測具有空間直觀性,避免了預測中的人為因素;能夠彌補一些人工方法的缺陷(如對於斷裂控礦影響寬度帶的確定)。與傳統的方法相比,GIS空間分析功能可以更加迅速地對大量數據進行對比和分析,大大節約了時間,縮短了研究周期,

(4)多源信息的集成

地質資料庫的數據是多源數據。有不同精度、不同比例尺、不同數據源、不同格式的數據,藉助GIS能將這些多源的數據有機地集成在一起,能提供集成管理多源地學數據(包括以文字、數字為主的屬性信息和以圖形圖像為主的空間信息),具有方便建立模型及進行空間模擬分析的能力,使數據的分析更有效和定量化。進而,可以以多尺度、多方位反映某個地區的地質成礦信息。

由此可見,海量的地質數據與GIS強大的空間信息處理和分析功能的有機結合,是地質領域對多源地學信息綜合分析進行成礦預測劃時代的理想工具。

通過以上三個章節的分析論述,GIS在理論和技術上的日臻完善和強大,使得基於GIS地質圖資料庫的應用更加深入人心。在理論上,地理空間和地理信息空間的點本質認識以及地理信息元組概念的提出對地理信息應用特別是在地質領域的應用理論體系的建立提供了一條理論依據和入口;在技術上,以ArcGIS為代表的新一代地理信息系統的日益完善:在地理信息表達上,以本體為核心的地理信息表達方式為地質信息的表達及應用提供了強有力的工具,使得原有地理信息所不能完成的知識發現、復雜環境建模等復雜應用在新地理信息系統下成為現實;在地理信息分析技術上,ArcGIS從地理信息庫(知識庫)、基於知識庫的智能可視化,以及地理信息處理三個角度為地理信息的各種應用提供了強有力的工具支持,特別是9.0版本開發以後,對探索式空間數據分析方法整合使從海量日益復雜的地理信息中進行數據挖掘和知識發現可以在空間、時間、屬性一體化方式下進行。

⑻ 資料庫系統原理論文

庫存管理資料庫系統原理與應用

【摘 要】庫存管理系統是典型的信息管理系統(MIS),其開發主要包括後台資料庫的建立和維護以及前端應用程序的開發兩個方面。對於前者要求建立起數據一致性和完整性強.數據安全性好的庫。而對於後者則要求應用程序功能完備,易使用等特點。
經過分析如此情況,我們使用微軟公司的VisualBasic開發工具,利用其提供的各種面向對象的開發工具,尤其是ADO,是能方便而簡潔操縱資料庫的智能化對象,短期內就可以開發出用戶滿意的可行系統。
關鍵字: 庫存管理 ADO 面相對象 庫存ABC分析

第一章 概述
1.1 庫存管理的必要性
大多數庫存管理理論認為,庫存是物理上和邏輯上庫房庫位的所有有形和無形物料極其價值的總和,具體包括成品、原材料、在製品、在途品、生產前物料、備品備件等。雖然持有一些庫存是必要的,過量的庫存卻非但沒有用處而且佔用了資金。佔用的資金對於公司發展、新產品開發等都是非常需要的;減少資金佔用還可以大大減少來自銀行貸款的利息和風險。對那些采購量特別大、采購件市場價格有波動的物料庫存,加強庫存管理效果更為明顯。因此,平衡公司庫存投資與其它資金需求至關重要。
1.2 庫存分類
企業怎樣管理庫存,是庫存管理的最大難點和挑戰。因此,通過MRPII物料主計劃模塊和采購模塊建立計劃與控制系統以有效地實施庫存管理和采購補償成為題中應有之義。通過調查,我們得知任何庫存均可分為如下三類:
A類物品:高值──價值占庫存總值70-80%的相對少數物品。通常為物品的15-20%。
B類物品:中值──總值占庫存總值的15-20%。物品數居中,通常占物品的30-40%。
C類物品:低值──庫存總值幾乎可以忽略不計,只佔5-10%。是物品的大多數,通常佔60-70%。
顯然,A類物品是關鍵;如果我們把精力集中於A類物品,使其庫存壓縮10-50%,就是總庫存的相當可觀的一筆壓縮。
關於ABC分類方法有幾條基本法則:
a. 控制的程度:
對A類物品嚴加控制,包括做完備、准確的記錄,高層監督和經常評審,從供應商按大合同訂單頻繁交貨,對車間緊密跟蹤以壓縮提前期。
對B類物品做正常控制,包括良好的記錄與常規的關注。
對C類物品盡可能使用簡便的控制,諸如定期目視檢查庫存實物、簡要記錄或以簡便標志法表明補充存貨已經訂貨,採用大庫存量與訂貨量以避免缺貨,安排車間日程計劃時給以低優先順序。
b.優先順序
在一切活動中給A類物品以高優先順序以壓縮其提前期與庫存。
對B類物品予以正常處理,僅在關鍵時給以高優先順序。
予C類物品以最低優先順序。
c.訂貨過程
對A類物品提供及時、准確的采購信息和狀態查詢。計算機數據需要人工加以核對,進行階段性盤點,以及頻繁的評審以壓縮庫存。
對B類物品,按一定周期或當發生重大變化時評審一次庫存數據和訂貨點,MRPII操作按例行公事處理。
對C類物品可以盤點處理或訂貨點計算。訂貨往往不用MRPII作計劃。可以憑業務人員的經驗加以控制。
由上可以看出庫存管理的重要性。因此,庫存管理是企業管理的重要組成部分。市場需要庫存商品提供給用戶,企業的經營需要庫存保證各種葯品的供應以進行葯品的銷售,庫存對生產效率的提高有著極其重要的影響。因此,庫存管理系統是計算機管理系統的中心。因為,所有企業的經營活動都離不開物流的活動。
1.3 庫存管理的目標
庫存管理的主要目標就是通過對倉庫所有入出庫活動的管理和控制及對庫存數據有效的統計和分析,以保證企業生產中暢通的物流,使決策人員及早發現問題,採取相應措施,調整庫存結構,縮短儲備周期,加速資金周轉,最大限度地降低庫存佔用,同時,通過周期性的倉庫盤點,及時補救管理中的漏洞,使庫存管理系統實時地反映企業中各個倉庫的現時情況,為各類管理人員從不同側面提供所需信息,以便協調企業經營收到更大效益,庫存管理系統是協調企業生產經營的基礎,其數據的准確性、方便的查詢、有效的分析是整個計算機管理系統順利運行的關鍵。
第二章 開發背景
企業的庫存物資管理往往是很復雜、很繁瑣的。由於所掌握的物資種類眾多,訂貨、管理、發放的渠道各有差異,各個企業之間的管理體制不盡相同,各類統計報表繁多,因此倉庫的庫存管理必須編制一套庫存管理信息系統,實現計算機化操作,而且必須根據企業的具體情況制定相應的方案。
根據當前的企業管理體制,一般的庫存管理系統,總是根據所掌握的物資類別,相應分成幾個科室來進行物資的計劃,訂貨,核銷托收,驗收入庫,根據企業各個部門的需求來發送物資設備,並隨時按期進行庫存檔點,作台帳,根據企業領導和自身管理的需要按月、季度、年度進行統計分析,產生相應報表。為了加強關鍵物資、設備的管理,要定期掌握其儲備,消耗情況,根據計劃定額和實際纖毫定額的比較,進行定額管理,使得資金使用合理,物資設備的儲備最佳。
一個完整的企業物資供應管理系統應包括采購計劃管理,合同收託管理、倉庫庫存管理、定額管理、統計管理、財務管理等模塊。其中倉庫的庫存管理是整個物資供應管理系統的核心。因此有必要開發一套獨立的庫存管理系統來提高企業工作效率, 而所使用的這套庫存管理系統是企業生產經營管理活動中的核心,此系統必須可以用來控制合理的庫存費用、適時適量的庫存數量,使企業生產活動效率最大化。通過對這些情況的仔細調查,我開發了下面的倉庫庫存管理系統。
第三章 系統分析
本系統採用了結構化生命周期法,結構化生命周期法是最常用的管理信息系統開發方法,分為四個步驟,即系統調研分析、資料庫設計實現、界面設計實現和系統功能設計實現。其中系統調研分析階段是最基礎、也是最容易被開發人員忽視的環節。
3.1進行資料收集
在整個系統分析階段,我在圖書館認真查看了很多關於倉庫庫存管理方面的書籍,收集到了相應的入庫單、領料單、台賬、物料卡、報表等資料。
入庫單是入庫單位在把相應的零部件送人倉庫時必須填寫的單據;領料單是領料人員從倉庫中領取零部件時必須填寫的單據(即出庫);零部件台賬(相當於本系統中的操作日誌)實際是一個流水賬,用於記錄每天發生的入庫、出庫信息;物料卡(在本系統中用現有庫存信息來表示)的作用是記錄某一種零部件的數量變化,以便庫管員盤查;報表是倉庫向有關領導和部門定期提交的零部件庫存匯總信息。收集到的入庫單、領料單、零部件庫存台賬、零部件物料卡等單據和報表的實物樣式在此略去,有興趣者請參考有關類似企業的樣本即可。
3.2繪制業務流程圖
3.3用戶需求分析
用戶需求分析就是在用戶需求調研的基礎上,確定系統的總體結構方案,完成相應的需求分析報告。在確定系統的總體結構方案過程中,包括確定應用程序的結構、系統開發環境和系統的功能模塊。用戶需求調研結束之後,應該立即進行用戶需求分析。
3.3.1應用程序結構確定
從用戶應用角度來看,可把應用程序系統的組成部分分成數據存儲層、業務處理層和界面表示層等3個層次,而應用程序結構可歸納為:集中式應用程序結構、單用戶應用程序結構、多層伺服器應用程序結構、瀏覽器/伺服器應用程序結構、客戶機/伺服器應用程序結構等5種類型。
本庫存管理系統就採用了當前最流行的客戶機/伺服器應用程序結構(即C/S結構),此時,客戶機提出請求,伺服器對客戶機的請求作出回應。通過對服務功能的分布實現了分工服務。數據存儲層放在伺服器上,業務處理層和界面表示層放在客戶機上,因此又被稱為「靈敏的客戶機」結構。許多操作可以在本地的客戶機上執行,只是當需要數據時,才向伺服器發出請求。並使應用程序的處理更接近用戶,使整個系統具有較好的性能,可以並行地處理應用程序的請求、減少了數據傳輸量、降低了伺服器的負荷。由於條件所限,將此系統所有程序都置於一台計算機上,以便調試運行。
3.3.2確定系統開發環境
由於大多數公司內部使用的計算機平台都是基於Windows環境的。為了降低系統成本,應最大程度地利用現有的資源、兼容現有的環境,可確定使用下面的開發環境:
★網路操作系統:Windows2000;★資料庫伺服器:MicrosoftAccessr2000;
★伺服器平台:Windows2000;★客戶機平台:Windows95/98/NT/2000;
★前端開發工具:visualBasic6.0(企業版);★數據訪問對象:ADO(本系統使用ADO控制項,簡化編程)。
3.3.3確定系統的功能模塊
通過分析確定庫存系統將包含6個主要功能模塊,即系統模塊、入庫業務管理模塊、出庫業務管理模塊、退料業務管理模塊(還庫業務管理模塊)、盤點業務管理模塊(報表輸出)、需求管理模塊。對於每一個功能模塊,都包含了數據錄入、編輯、查詢、統計、列印、應急、幫助等功能。
第四章 系統設計
4. 1總體設計
4.1.1系統目標設計
系統開發的總體任務是實現企業物資設備管理的系統化、規范化和自動化,從而達到企業倉庫庫存管理效率的目的。
4.1.2開發設計思想
庫存管理的物資主要是企業生產中所需要的各種設備、原材料及零部件。進貨時經檢查合同確認為有效托收後,進行驗收入庫,填寫入庫單,進行入庫登記。企業各個部門根據所需要的物資設備總額和部門生產活動需要提出物資需求申請。計劃員根據整個企業的需求開出物資設備出庫單,倉庫管理員根據出庫單核對發放設備、原材料及零部件。有些設備使用完畢需要及時歸還入庫,填寫還庫單。根據需要按照月、季、年進行統計分析,產生相應報表。
倉庫庫存管理的特點是信息處理量比較大。所管理的物資設備、原材料及零部件種類繁多,而且由於入庫單、出庫單、需求單等單據發生量特別大,關聯信息多,查詢和統計的方式各不相同,因此在管理上實現起來有一定的困難。在管理的過程中經常會出現信息的重復傳遞;單據、報表種類繁多,各個部門規格不統等問題。
在本系統的設計過程中,為了克服這些困難,滿足計算機管理的需要,我們採取了下面的一些原則:
 統一各種原始單據的格式,統一帳目和報表的格式。
 刪除不必要的管理冗餘,實現管理規范化、科學化。
 程序代碼標准化,軟體統一化,確保軟體的可維護性和實用性。
 界面盡量簡單化,做到實用、方便,盡量滿足企業中不同層次員工的需要。
 建立操作日誌,系統自動記錄所進行的各種操作。
4.1.3系統功能分析
本系統需要完成的功能主要有以下幾點。
 庫存管理的各種信息的輸入,包括入庫、出庫、還庫、需求信息的輸入等。
 庫存管理的各種信息的查詢、修改和維護。
 設備采購報表的生成。
 在材料庫存中加入所允許的最大庫存合最小庫存欄位,對所有庫存物資實現監控和報警。
 企業各個部門的物資需求管理。
 操作日誌的管理
 庫存管理系統的使用幫助。
4.2詳細設計
4.2.1 系統功能模塊設計
系統模塊
a. 包括報表的列印及設置,操作日誌的管理。
b. 管理員可以通過管理界面添加或刪除用戶,添加新管理員或刪除原有管理員,驗證用戶的合法性,阻止非法用戶登錄。
c. 管理員或其他用戶可以修改自己的密碼。
(2) 入庫模塊
包括填寫入庫單,更新,刪除入庫記錄,查看現有庫存信息,入庫記錄的查詢及列印
(3) 出庫模塊
包括填寫出庫單,更新,刪除出庫記錄,查看現有庫存信息,出庫記錄的查詢及列印
(4) 還庫模塊
包括填寫還庫單,更新,刪除還庫記錄,還庫記錄的查詢及列印
(5) 需求模塊
包括填寫需求計劃表,更新,刪除采購計劃信息,查看現有采購信息,采購信息的查詢及列印,以及預測短期內的需求計劃。
4.2.2資料庫設計
資料庫需求分析
通過對企業倉庫管理內容和數據流程分析,設計的數據項合數據結構如下:
 設備代碼信息。包括的數據項有設備號、設備名稱。
 現有庫存信息。包括的數據項有現有設備、現有數目、最大庫存、最小庫存等。
 設備使用信息。包括的數據項有使用的設備、使用部門。數目。使用時間、出庫時狀態等。
 設備采購信息。包括的數據項有采購的設備、采購員、供應商、采購數目、采購時間等。
 設備歸還信息。包括的數據項有歸還設備、歸還部門、歸還數目、歸還時間、經手人等。
 設備需求信息。包括的數據項有需求的部門、需求設備、需求數目、需求時間等。
有了上面的數據結構、數據項和數據流程,就可以進行下面的資料庫設計。
資料庫概念結構設計
這一設計階段是在需求分析的基礎上,設計出能夠滿足用戶需求的各種實體,以及它們之間的關系,為後面的邏輯結構設計打下基礎。根據上面的設計規劃出的實體有庫存實體、出庫實體、入庫實體、采購實體、還庫實體、需求實體。 資料庫邏輯結構設計
在上面的實體以及實體之間關系的基礎上,形成各個表格之間的關系。
4.3 代碼設計
任何庫存均可分為如下三類:
A類物品:高值──價值占庫存總值70-80%的相對少數物品。通常為物品的15-20%。
B類物品:中值──總值占庫存總值的15-20%。物品數居中,通常占物品的30-40%。
C類物品:低值──庫存總值幾乎可以忽略不計,只佔5-10%。是物品的大多數,通常佔60-70%。
4.4 輸入輸出設計
本系統界面標准Windows形式,鍵盤輸入(也可以用條形碼讀取),人機交互,容易使用。輸入輸出的設計考慮美觀實用和通俗易懂,圖文並茂。
4.5系統安全性設計
系統資料庫中包含多個二維表,所以在系統與資料庫的連接上,並沒有把資料庫和系統的連接直接寫入代碼,而是通過對伺服器端進行系統設置,使資料庫名及路徑不可見,並通過ACCESS的資料庫安全設置,保證了資料庫的安全性。系統根據用戶身份不同賦予不同許可權,用戶用密碼登陸,同樣也保證了系統數據的安全性。
第五章 系統實施
5.1、開發工具簡介
本系統的前端開發工具,我選擇了Visual Basic6.0,後台資料庫採用Access2000。
5.1.1 VB簡介
Visual意為「可視化的」,指的是一種開發圖形用戶界面的方法,所以Visual Basic是基於Basic的可視化的程序設計語言。在Visual Basic中,一方面繼承了Basic所具有的程序設計語言簡單易用的特點,另一方面在其編程系統中採用了面向對象、事件驅動的編程機制,用一種巧妙的方法把Windows的編程復雜性封裝起來,提供了一種所見即所得的可視化程序設計方法。
5.1.2 VB功能特點
 具有面向對象的可視化設計工具
在VB中,應用面向對象的程序設計方法(OOP),把程序和數據封裝起來視為一 個對象,每個對象都是可視的。程序員在設計時只需用現有工具根據界面設計要求,直接在屏幕上「畫」出窗口、菜單、按鈕、滾動條等不同類型的對象,並為每個對象設置屬性。程序員的編程工作僅限於編寫相關對象要完成的功能程序,因而程序設計的效率可大大提高。
 事件驅動的編程機制
事件驅動是非常適合圖形用戶界面的編程方式。在圖形用戶界面的應用程序中,是由用戶的動作即事件掌握著程序運行的流向,每個事件都能驅動一段程序的運行。程序員只要編寫響應用戶動作的代碼,而各個動作之間不一定有聯系。
 提供了易學易用的應用程序集成開發環境
在VB集成開發環境中,用戶可設計界面、編寫代碼、調試程序,直至把應用程序編譯成可執行文件在Windows中運行,使用戶在友好的開發環境中工作。
 結構化的程序設計語言
VB具有豐富的數據類型和結構化程序結構,作為一種程序設計語言,它還有如下一些特點:
 強大的數值和字元串處理功能
 豐富的圖形指令,可方便地繪制各種圖形
 提供靜態和動態數組,有利於簡化內存的管理
 過程可遞歸調用,使程序更為簡練
 支持隨機文件和順序文件的訪問
 提供了一個可供應用程序調用的包含多種類型的圖標庫
 具有完善的運行出錯處理
 支持多種資料庫系統的訪問
利用數據控制項可訪問的資料庫系統有:Microsoft Access、Btrieve、DBASE、Microsfot FoxPro和Paradox等,也可以訪問Microsoft Excel、Lotus1-2-3等多種電子表格。
 支持動態數據交換(DDE)、動態鏈接庫(DLL)和對象的鏈接與嵌入(OLE)技術
 完備的HELP聯機幫助功能
與Windows環境下的軟體一樣,在VB中,利用幫助菜單和F1功能鍵,用戶可以隨時方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關的示例代碼,通過復制、粘貼操作可獲取大量的示例代碼,為用戶的學習和使用提供了極大的方便。
VB程序設計的概念就是面向對象的概念,對象就是數據(DATA)和代碼(CODE)互相結合的綜合體。Windows上面的每一個圖標,包括窗口本身都是對象,如果沒有任何事情發生,對象處於停頓狀態。當存在外來事件時,程序段執行,它的執 行是由外來事件決定的。因此是「事件」驅動的。
編寫VB程序較為簡單,首先將各個對象放在空白窗體上,然後將程序代碼分別添加給對象或圖標,將它們組合起來就可以隨意運行了。
在VB中,窗體實際上是一個對象,VB的窗體含有許多內嵌特性,這使得用戶界面部分的建立像是從一個目錄中挑選一個個合適的控制項,而不是從零開始一步一步地建立控制項。這種開發者能親眼看到的程序設計過程就是「可視化程序設計」(Visual Programming)
5.1.3 VB中的基本概念
對象:面向對象編程(OOP)的提法大家一定也很耳熟,雖然Visual Basic並不是完全的面向對象編程,但也利用了對象編程技術。對象簡單地說就是大家經常看到的各種窗口、按鈕、文本框甚至列印機等。
屬性:如同電視有黑白、彩色之分一樣,作為對象的Windows中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對象的屬性決定的。不同對象的屬性可能不同。屬性一般決定了對象的位置、大小、顯示等情況。
方法:就是對象能夠做的事,如列印機對象就有列印(Print)方法、窗口對象支持隱藏(Hide)方法、很多對象支持移動(Move)方法等。
事件:就是對象對用戶各種操作的反映情況。如用戶用滑鼠按一下按鈕,就會觸發按鈕的「按」(Click)事件。
控制項:控制項就是Visual Basic提供的編程用的模塊,與對象有直接的聯系,如同積木的木塊,使用這樣的控制項,就可以像拼圖或堆積木一樣「搭」、「拼」你的程序界面。Visual Basic中使用控制項,簡化了Windows中的窗口、按鈕等對象的編程設計。每個控制項都有各自的屬性、事件及方法。只需修改這些特徵你就可以隨心所欲地編程了。最重要的是,你可以利用成千上萬的各種擴充的控制項來快速構造幾乎能滿足你任何要求的程序。例如,如果你不滿意Windows簡陋的媒體播放器,你就可以使用VB的多媒體控制項在1小時以內設計一個完全自己風格的能夠播放CD、VCD的多媒體播放器,而功能完全與之相當。
5.1.4 Access2000資料庫簡介
作為Microsoft的office套件產品之一,access已經成為世界上最流行的桌面資料庫系統。Access與許多優秀的關系資料庫一樣,可以讓你很容易地連接相關的信息而且還對其他的資料庫系統有所補充。它能操作其它來源的資料,包括許多流行的PC資料庫程序(如dBASE,Paradox,Microsoft FoxPro)和伺服器、小型機及大型機上的許多SQL資料庫。Access還完全支持Microsoft的OLE技術。
Access還提供windows操作系統的高級應用程序開發系統。Access與其它資料庫開發系統之間相當顯著的區別就是:您不用寫一行代碼,就可以在很短的時間里開發出一個功能強大而且相當專業的資料庫應用程序,並且這一愉快的過程是完全可視的!如果您能給它加上簡短的VBA代碼,那麼您的程序決不比專業程序員潛心開發的程序差。

Access的總體結構
Access將所有有名字的東西都成為對象(object),在Access 2000中,最重要的對象有表,查詢,窗體,報表,宏和模塊。
表 用戶定義的存儲資料的對象。每一個表都包含有關某個主體的信息。表包括存儲不同種類資料的欄位(列),而記錄(行)則收集特定主體實例的所有信息。
查詢 為來自一個或多個表的資料提供定製視圖的對象。在Access中,可以利用圖形化的實例查詢機制(QBE)或通過SQL語句來建立查詢。你可以在查詢中選擇、更新、插入或刪除資料,也可以用查詢來建立新表。
窗體 窗體是主要的人機介面。大量的操作(幾乎所有)都要通過窗體完成。窗體通過運行宏(macro)或Visual Basic for Applicatinns(VBA)過程,來響應大量的事件。Access 2000為我們提供了強大的(同時也是相當方便的向導)來建立標準的Windows窗體。
報表 為格式化、計算、列印選定資料而設計的對象。它是衡量一個優秀的資料庫的重要標准(有時甚至是唯一的標准)。
宏 為了響應已定義的事件,需要讓Access去執行一個或多個操作,而宏就是對這些操作的結構化的定義對象。它可以讓你像堆積木一樣建立一個功能強大的程序,而無須寫大量的代碼。
模塊 包括用VBA編碼的定製過程的一個對象。模塊提供了獨立的動作流以捕獲錯誤,而宏做不到。模塊能直接響應窗體或報表事件,也可以從應用程序的任何地方被調用。
5.2 系統實現
5.2.1.系統管理模塊實現
5..2.3入庫模塊的實現
5..2.4 出庫模塊實現
5.2.5設備采購模塊實現,程序略
5.2.7設備代碼模塊實現
5.2.9 操作日誌模塊實現
第六章 系統使用說明
參考文獻:

1. 資料庫系統原理教程 王珊 陳紅 清華大學出版社
2. 管理信息系統 王虎 張俊 武漢理工大學出版社
3. Visual Basic 資料庫開發 E.Winemiller,J.Roff B.Heyman,R.Groom 著 清華大學出版社
4. PowerBuilder 8.0資料庫系統開發實例導航 何旭洪 余建英 人民郵電出版社
5. VB6從入門道精通 『美』Gary cornell 著 北京希望電子出版社
6. managing Information Systems David L.Anderson著 清華大學出版社
7. Management Information Systems Raymond Mcleod,Jc George Schell 著 北京大學出版社

熱點內容
c語言報告三 發布:2025-05-15 05:10:37 瀏覽:844
09壓縮餅干 發布:2025-05-15 05:05:58 瀏覽:279
迭代法編程c 發布:2025-05-15 04:58:01 瀏覽:815
用什麼dns伺服器地址快 發布:2025-05-15 04:52:59 瀏覽:27
手機端so反編譯 發布:2025-05-15 04:50:55 瀏覽:610
linuxlamp安裝 發布:2025-05-15 04:50:45 瀏覽:578
sqlplus緩存區怎麼設置 發布:2025-05-15 04:50:44 瀏覽:858
shell腳本環境變數 發布:2025-05-15 04:45:18 瀏覽:693
安卓nba2k18什麼時候出 發布:2025-05-15 04:38:42 瀏覽:393
王者安卓轉蘋果為什麼顯示失敗 發布:2025-05-15 04:35:49 瀏覽:18