當前位置:首頁 » 數據倉庫 » 資料庫應用系統開發說明書
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

資料庫應用系統開發說明書

發布時間: 2023-03-10 11:09:52

資料庫說明書的作用以及格式

主要包括的內容:

概要信息;
表30個 視圖數量10 存儲過程:2 自定義函數:2

下面是依次的詳細說明:
--------------------------------
表名:tbl_user
說明:用戶表,主要存儲網站用戶相關信息
欄位說明:
userID int not null
username varchar 50 not null
password varchar 20 not null
addtime datetime not null 默認:系統時間
索引:
......
主鍵:
....
(最好有powerDesigner的圖)

--------------------------------

總之,無固定的格式,寫的清楚,別人可以讀懂為原則。

㈡ 簡述資料庫應用系統的設計步驟

資料庫設計的基本步驟:

1、系統需求分析與設計。

2、概念結構分析與設計。

3、邏輯結構分析與設計。

4、物理結構分析與設計。

5、系統實施。

6、系統維護。

(2)資料庫應用系統開發說明書擴展閱讀:

資料庫設計技巧:

1、原始文件與實體的關系

它可以是一對一,一對多,多對多的關系。一般來說,它們是一對一的關系:一個原始文檔只對應於一個實體。在特殊情況下,它們可以是一對多或多對一關系,即一個原始文檔對應於多個實體,或者多個原始文檔對應於一個實體。

這里的實體可以理解為基本表。在對應關系明確後,對輸入介面的設計非常有利。

2、主鍵和外鍵

一般來說,實體不能既沒有主鍵也沒有外鍵。在E-R圖中,葉中的實體可以定義主鍵或不定義主鍵(因為它沒有子代),但它必須有外鍵(因為它有父項)。

主鍵和外鍵的設計在全局資料庫的設計中起著重要的作用。當全球資料庫的設計完成後,一位美國資料庫設計專家說:「鑰匙無處不在,只有鑰匙。」。這是他資料庫設計的經驗,也體現了他對信息系統核心(數據模型)高度抽象的理念。

因為:主鍵是一個高度抽象的實體。主鍵和外鍵的配對表示實體之間的連接。

3、基本表的屬性

基本表不同於中間表和臨時表,因為它具有以下四個特點:

原子性。基本表中的欄位不可分解。

原始主義。基本表中的記錄是原始數據(基本數據)的記錄。

演繹的。所有輸出數據都可以從基本表和代碼表中的數據導出。

穩定。基本表的結構比較穩定,表中的記錄要長期保存。

在了解基本表的性質之後,在設計資料庫時,可以將基本表與中間表和臨時表區分開來。

㈢ 資料庫設計說明書中的數據字典應該如何編寫啊

正文

1 引言

1.1編寫目的

說明編寫這份資料庫設計說明書的目的,指出預期的讀者。

1.2背景

說明:

a.說明待開發的資料庫的名稱和使用此資料庫的軟體系統的名稱;
b.列出該軟體系統開發項目的任務提出者、用戶以及將安裝該軟體和這個資料庫的計算站(中心)。

1.3定義

列出本文件中用到的專門術語的定義、外文首字母組詞的原片語。

1.4參考資料

列出有關的參考資料:

a.本項目的經核準的計劃任務書或合同、上級機關批文;
b.屬於本項目的其他已發表的文件;
c.本文件中各處引用到的文件資料,包括所要用到的軟體開發標准。

列出這些文件的標題、文件編號、發表日期和出版單位,說明能夠取得這些文件的來源。

2 外部設計

2.1標識符和狀態

聯系用途,詳細說明用於唯一地標識該資料庫的代碼、名稱或標識符,附加的描述性信息亦要給出。如果該資料庫屬於尚在實驗中、尚在測試中或是暫時使用的,則要說明這一特點及其有效時間范圍。

2.2使用它的程序

列出將要使用或訪問此資料庫的所有應用程序,對於這些應用程序的每一個,給出它的名稱和版本號。

2.3約定

陳述一個程序員或一個系統分析員為了能使用此資料庫而需要了解的建立標號、標識的約定,例如 用於標識資料庫的不同版本的約定和用於標識庫內各個文卷、、記錄、數據項的命名約定等。

2.4專門指導

向准備從事此資料庫的生成、從事此資料庫的測試、維護人員提供專門的指導,例如將被送入數據 庫的數據的格式和標准、送入資料庫的操作規程和步驟,用於產生、修改、更新或使用這些數據文卷的操 作指導。 如果這些指導的內容篇幅很長,列出可參閱的文件資料的名稱和章條。

2.5支持軟體

簡單介紹同此資料庫直接有關的支持軟體,如資料庫管理系統、存儲定位程序和用於裝入、生成、修 改、更新資料庫的程序等。說明這些軟體的名稱、版本號和主要功能特性,如所用數據模型的類型、允許 的數據容量等。列出這些支持軟體的技術文件的標題、編號及來源。

3 結構設計

3.1概念結構設計

說明本資料庫將反映的現實世界中的實體、屬性和它們之間的關系等的原始數據形式,包括各數據項、記錄、系、文卷的標識符、定義、類型、度量單位和值域,建立本資料庫的每一幅用戶視圖。

3.2邏輯結構設計

說明把上述原始數據進行分解、合並後重新組織起來的資料庫全局邏輯結構,包括所確定的關鍵字和屬性、重新確定的記錄結構和文卷結構、所建立的各個文卷之間的相互關系,形成本資料庫的資料庫管理員視圖。

3.3物理結構設計

建立系統程序員視圖,包括:

a.數據在內存中的安排,包括對索引區、緩沖區的設計;
b.所使用的外存設備及外存空間的組織,包括索引區、數據塊的組織與劃分;
c.訪問數據的方式方法。

4 運用設計

4.1數據字典設計

對資料庫設計中涉及到的各種項目,如數據項、記錄、系、文卷、模式、子模式等一般要建立起數據字典,以說明它們的標識符、同義名及有關信息。在本節中要說明對此數據字典設計的基本考慮。

4.2安全保密設計

說明在資料庫的設計中,將如何通過區分不同的訪問者、不同的訪問類型和不同的數據對象,進行分別對待而獲得的資料庫安全保密的設計考慮。

㈣ 求介紹山藝圖書館的資料庫

圖書館管理系統
摘 要
圖書管理系統是典型的信息管理系統(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組件
24
37
§5.2 數據模塊窗體的設置 ……………………………………………………… 第一章 緒 論
§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實際上是沒有什麼意義的。因為我們按規范化建立的指標體系和表的過程都自動保證了所有?/div>
基於UML圖書館管理系統的建模設計與實現 推薦 CAJ下載 PDF下載

【英文篇名】 Modeling Design and Realization of Library Management System Based on UML
【作者】 於淑香;
【英文作者】 YU Shu-xiang (Shazhou Polytechnical Institute of Technology; Zhangjiagang 215600);
【機構】 沙洲職業工學院;
【刊名】 沙洲職業工學院學報 , 編輯部郵箱 2005年 02期 ASPT來源刊 CJFD收錄刊
【英文刊名】 Journal of Shazhou Vocational Institute of Technology
【中文關鍵詞】 統一建模語言; 面向對象; 圖書館管理系統; 建模設計;
【英文關鍵詞】 UML; object-oriented; library management system; modeling design;
【中文摘要】 以圖書館管理系統的開發為背景,探討了UML在軟體體系結構建模中的應用。以用例圖表達系統需求, 以設計類圖、順序圖、活動圖表達系統的結構邏輯及行為邏輯,並詳細介紹了基於UML的圖書館管理系統的建模設計及實現過程。
【英文摘要】 Based on the development of library management system, this paper discusses the application of UML to the modeling in the system structure of software, and illustrates in a detailed way the modeling design and the realizing process in the library management system based on UML, with the case picture to express the demand of the system, and the class diagram, the sequence diagram and the activity diagram to express the structural logic and behavioral logic in the system.
【DOI】 cnki:SCN:32-1525.0.2005-02-006

㈤ 課程設計倉庫管理系統的資料庫製作

資料庫原理及應用課程設計
一、課程設計的目的
《資料庫原理及應用》課程設計是計算機科學與技術專業集中實踐性環節之一,是學習完《資料庫原理及應用》課程後進行的一次全面的綜合練習。本課程設計主要在於加深學生對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使學生綜合運用所學知識和增強實際動手能力的目的。

二、課程設計的任務與要求
要求學生根據自身對題目的理解情況,從給定的設計題目中選擇一個,以MS SQL Server作為後台資料庫平台,以PowerBuilder作為前台開發工具,完成一個小型資料庫應用系統的系統的分析、設計和開發。

三、課程設計說明書
倉儲管理系統
對於一個以生產或經營產品為主要業務的單位來說,倉庫管理系統至關重要。高效方便的倉庫管理系統,可以為生產經營提供堅強的後盾和有力的支持。效率低下甚至是混亂不堪的倉庫管理系統,無疑會成為企業健康發展的拖累甚至是枷鎖。使企業發展動力不足。本次資料庫設計實現了倉庫管理的高效化、電子化。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。
1系統需求分析
1.1系統功能需求分析

倉庫管理系統主要實現對庫存商品的管理,對商品出庫、入庫的管理,和對倉庫管理系統維護的功能。具體要實現的功能包括:
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

1. 2數據需求分析
1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)
根據上面的關系我們需要的數據基本上就上面所列出的數據。

2 系統總體設計
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

2.1系統總體結構設計

2.2.1 E-R圖

2.2.2 關系模式

1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)

2.2.3 數據表

「員工信息表」「商品信息表」「出貨單」「進貨單」的主鍵分別是:ID、商品編號、商品編號、商品編號。

員工信息表

商品信息表

出貨單

進貨單

3.系統實施

工作界面PB9.0,以下是我製作過程和運行中的一些截圖:
首先建立PB與SQL的數據鏈接:如果鏈接不成功,返回對以話框「資料庫連接錯誤,經檢查後再試!」

然後點Preview選項會彈出如下窗口:

一、 工作界面截圖:

分別建有:workspace、application、windows、dw_、da_等。

工作時檢測連接資料庫是否正常的程序代碼:
// Profile q
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=倉庫;UID=;PWD='"

connect;
open(w_enter)

二、 運行結果的截圖:
這個是我運行後的第一個用戶界面,在界面中輸入管理員ID和密碼。我的管理員ID 和密碼分別為 1,123.點擊確定進入menu下一界面。

若ID和密碼分別輸入1,1234,則跳出以下界面:

確定按鈕所對應的代碼如下:
//定義兩個變數
string password,userid
password=sle_2.text
//檢索用戶名和密碼記錄
SELECT "員工信息表". "ID",
"員工信息表"."密碼"
INTO :userid,
:password
FROM "員工信息表"
WHERE "員工信息表"."ID" =:sle_1.text and "員工信息表"."密碼" =:sle_2.text;

//判斷用戶輸入的用戶名是否正確
if sqlca.sqlcode<>0 then
messagebox("錯誤!","ID或密碼錯誤,請重新輸入!",exclamation!,ok!,2)
else
messagebox("通過驗證!","ID和密碼正確,歡迎您使用本系統!",Information!,ok!,2)
open(w_main)
close(w_enter)
end if

取消按鈕所對應的代碼如下:
close(parent)
//關閉登錄窗口

三、 menu界面的截圖:
在本界面中我們通過點擊菜單欄上的不同管理按鈕來實現管理和操作的功能。
進貨—進貨單
出貨—出貨單
庫存—蔬菜類
—水產類
—肉類
系統維護—修改密碼
查詢

四、 進貨的截圖如下:
在本界面中,操作員可以輸入進貨信息

五、 進貨的截圖如下:
在本界面中,操作員可以輸入出貨信息

六、本界面是實現用戶更改自己的密碼的界面
用戶在登陸後根據上面的提示可以更改自己的密碼。

程序代碼如下:
string oldid
string oldp
string newp1
string newp2
oldid=trim(sle_1.text)
oldp=trim(sle_2.text)
newp1=trim(sle_3.text)
newp2=trim(sle_4.text)

if len(oldp)=0 or isnull(oldp) then
oldp=space(10)
end if
if len(newp1)=0 or isnull(newp1) then
newp1=space(10)
end if
if len(newp2)=0 or isnull(newp2) then
newp2=space(10)
end if
select "operator"."password"
into :oldp
from "operator"
where "operator"."password"=:oldp;
if sqlca.sqlcode<>0 then
messagebox("提示","原密碼不正確!")
sle_2.text=""
sle_2.setfocus()
return
end if
if newp1<>newp2 then
messagebox("提示","兩次新密碼輸入不同!")
sle_4.text=""
sle_4.setfocus()
return
end if
Update "operator"
set "password"=:newp1
where "operator"."operator_id"=:oldid;
if sqlca.sqlcode<>0 then
rollback;
messagebox("提示","密碼更正錯誤! 請重設!")
return
end if
gs_password=newp1
commit;
messagebox("提示","密碼修改成功!")

七、本操作可以看倉庫里的商品並可對其進行插入和刪除

八、從倉庫查詢所需要的商品

4 系統評價
系統的功能基本上已經實現,但是還是不夠完善。但是在使用的時候還是能給用戶帶來一定的方便的。倉庫的進貨和出貨在本系統中能直觀的以表格形式反映出來,便於操作員的使用和決策者的管理。
4.1 系統特色
本系統要求用戶進行驗證之後才能進入相應的界面。有利於保護資料庫的安全,不被非法登陸使用。對於倉庫內貨物的進出管理要求嚴格,即進出貨時必須填寫相應的進出貨單據。便於企業管理查看賬目,保障了企業的穩定運行。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。在查看資料庫時可以方便的刪除資料庫中冗餘的信息和添加新的信息。
4.2 系統不足及改進
這個系統基本上實現了一些簡單的對系統所涉及表的更新、增加和刪除的功能。也實現對用戶登陸的安全上有了一定的限制,只有在正確輸入ID和密碼的時候才能進入系統。遠沒有達到大型公司的倉儲物資管理的要求,所創建的資料庫框架比較簡單,各表之間的聯系也過於簡單,沒有添加外鍵相互約束,用POWER BUILDER做出來的系統過於簡單、單調,需要進一步深入的調整優化,將各表之間的關系緊密聯系起來,相互制約,保證資料庫中數據的添加、刪除、更新,安全有序。操作窗口還需要進一步的進行美化,使用戶在使用中更賞心悅目。

5 課程設計心得
這次課程設計的主要目的是掌握資料庫應用系統分析設計的基本方法,基本掌握PowerBuilder,進一步提高分析解決問題的綜合能力。通過這次課程設計,我基本掌握了以上要求。但只有兩周的課程設計時間,時間比較倉促,所以開發的系統不是很完善,有一些功能未實現,但是倉庫管理的基本功能均已實現。以前對資料庫的很多知識認識都不深刻,做過這次課程設計之後,我對資料庫的知識有了一個比較系統的了解;比如:對表內一些欄位的約束,關系等的運用已經比較熟練。這個課程設計使我鞏固了資料庫的知識。
對於PowerBuilder也有了一定的了解,由於用的不多,所以運用的不是很熟練。剛開始的時候,對於PowerBuilder的語法,用法等一系列知識都不熟悉。當我基本完成此系統開發的時候,我發現其實也沒有那麼難,在未做之前我還害怕做不出來。經過對這個系統的開發,在開發過程中遇到但也解決了很多問題,所以說我們不能懼怕有困難而不去接觸認識它,我們要知難而上,只有這樣我們才能成長,才能有所發展。
這認為最難的一部分是用戶查看資料庫時通過插入刪除按鈕對資料庫的更改,因為我們在文本框中輸入的數字是被默認為字元型的,我在其中使用了integer(string)這個函數把字元型的進行了轉換,但是在使用的過程中並不能像我所想像的那樣有用。因為時間有限,所以這個問題還沒有完全的解決。
通過這次資料庫課程設計加深我對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使我綜合運用所學知識和增強實際動手能力的目的。
我會繼續學習資料庫的知識,學習PowerBuilder的知識,只有通過不斷的學習充實自己,才能讓自己有所得。只有了知識的積淀,才能為自己的發展鋪平道路!

可以參考一下啊,最終還是要自己做的吧。。僅供參考。

㈥ 在資料庫服務軟體說明書中 DAT概念什麼意思

DLL文件即動態鏈接庫文件,是一種可執行文件,它允許程序共享執行特殊任務所必需的代碼和其他資源。Windows提供的DLL文件中包含了允許基於Windows的程序在Windows環境下操作的許多函數和資源。 DLL多數情況下是帶有DLL擴展名的文件,但也可能是EXE或其他擴展名。它們向運行於Windows操作系統下的程序提供代碼、數據或函數。程序可根據DLL文件中的指令打開、啟用、查詢、禁用和關閉驅動程序。 DLL是Dynamic Link Library的縮寫,意為動態鏈接庫。在Windows中,許多應用程序並不是一個完整的可執行文件,它們被分割成一些相對獨立的動態鏈接庫,即DLL文件,放置於系統中。當我們執行某一個程序時,相應的DLL文件就會被調用。一個應用程序可有多個DLL文件,一個DLL文件也可能被幾個應用程序所共用,這樣的 DLL文件被稱為共享DLL文件。DLL文件一般被存放在C:\Windows\System目錄下

ASP是Active Server Page的縮寫,意為「活動伺服器網頁」。ASP是微軟公司開發的代替CGI腳本程序的一種應用,它可以與資料庫和其它程序進行交互,是一種簡單、方便的編程工具。ASP的網頁文件的格式是.asp,現在常用於各種動態網站中。 ASP是一種伺服器端腳本編寫環境,可以用來創建和運行動態網頁或Web應用程序。ASP網頁可以包含HTML標記、普通文本、腳本命令以及COM組件等。利用ASP可以向網頁中添加互動式內容(如在線表單),也可以創建使用HTML網頁作為用戶界面的web應用程序

.ini , .inc之類的文件,一般是放一些常量或資料庫鏈接語句等,再在需要的頁麵包含進去,和直接命為 asp 是沒什麼區別的。
但為了安全性,最好不要用這些後綴名,因為知道文件名時,在瀏覽器里輸入該文件的地址時,可看到所有內容的。

在Windows系統中,INI文件是很多,最重要的就是「System.ini」、「System32.ini」和「Win.ini」。該文件主要存放用戶所做的選擇以及系統的各種參數。用戶可以通過修改INI文件,來改變應用程序和系統的很多配置。但自從Windows 95的退出,在Windows系統中引入了注冊表的概念,INI文件在Windows系統的地位就開始不斷下滑,這是因為注冊表的獨特優點,使應用程序和系統都把許多參數和初始化信息放進了注冊表中。但在某些場合,INI文件還擁有其不可替代的地位。
.ini 文件是windows的系統配置文件,統管windows的各項配置,一般用戶就用windows提供的各項圖形化管理界面就可實現相同的配置了,但在某些情況,還是要直接編輯.ini才方便,一般只有很熟悉windows才能去直接編輯。開始時用於WIN31下面,WIN95用注冊表代替,[]及後面的內容表示一個節,相當於注冊表中的鍵。
除了windows現在很多windows下面的應用軟體也有.ini文件,用來配置應用軟體以實現不同用戶的要求。一般不用直接編輯這些.ini文件,應用程序的圖形界面即可操作以實現相同的功能。

INF文件全稱Information File文件,是Winodws操作系統下用來描述設備或文件等數據信息的文件。INF文件是由標準的ASCII碼組成,您可以用任何一款文字編輯器查看修改其中的內容。一般我們總是認為INF文件是系統設備的驅動程序,其實這是錯誤的認識,Windows之所以在安裝某些硬體的驅動時提示需要INF文件是因為INF文件為該設備提供了一個全面描述硬體參數和相應驅動文件(DLL文件)的信息。就好比我們看著說明書安裝電腦硬體一樣,我們就是Windows系統,說明書就是INF文件。INF文件功能非常強大,幾乎能完成日常操作的所有功能。您可以把它看成是Windows系統底下的超強批初理。要熟練掌握和理解甚至是編寫INF文件需要對其內部結構有相當的認識。

.dat文件是程序使用的數據,它只是開發者為了清楚文件的意思而自己定義的,也可以命名成別的擴展名!
你可以用任何編輯工具新建文件,將其命名為.dat。
所以,.dat文件的打開工具也不一樣,比如,有些其實是文本文件,只是將擴展名改寫成.dat,就可以用文本編輯工具打開;最常見的還有VCD影音文件。
一般來說,這些文件不是由用戶直接使用的。
DAT並不是一種標准文件。許多軟體都使用這個擴展名,但文件含義不同。比如VCD文件為.DAT,而許多數據分析軟體也用這個擴展名保存數據。所以這要看具體的軟體情況來定

㈦ 基於asp,access資料庫的圖書管理系統需求規格說明書

摘要 介紹了信息中心圖書管理系統資料庫的設計。該系統是運行在學校內的圖書管理系統,實現了圖書資料的計算機管理和圖書查詢功能。

關鍵詞 圖書 網路 管理系統 資料庫

1 引言
一直以來人們使用傳統的人工方式管理圖書館的日常工作,對於圖書館的借書和還書過程,想必大家都已很熟悉。在計算機尚未在圖書館廣泛使用之前,借書和還書過程主要依靠手工。一個最典型的手工處理還書過程就是:讀者將要借的書和借閱證交給工作人員,工作人員將每本書上附帶的描述書的信息的卡片和讀者的借閱證放在一個小格欄里,並在借閱證和每本書貼的借閱條上填寫借閱信息。這樣借書過程就完成了。還書時,讀者將要還的書交給工作人員,工作人員根據圖書信息找到相應的書卡和借閱證,並填好相應的還書信息,這樣還書過程就完成了。

以上所描述的手工過程的不足之處顯而易見,首先處理借書、還書業務流程的效率很低,其次處理能力比較低,一段時間內,所能服務的讀者人數是有限的。利用計算機來處理這些流程無疑會極大程度地提高效率和處理能力。我們將會看到排隊等候借書、還書的隊伍不再那麼長,工作人員出錯的概率也小了,讀者可以花更多的時間在選擇書和看書上。

為方便對圖書館書籍、讀者資料、借還書等進行高效的管理,特編寫該程序以提高圖書館的管理效率。使用該程序之後,工作人員可以查詢某位讀者、某種圖書的借閱情況,還可以對當前圖書借閱情況進行一些統計,給出統計表格,以便全面掌握圖書的流通情況。

本次作業設計題目:「圖書管理系統」主要目的是利用資料庫軟體編制一個管理軟體,用以實現圖書、讀者以及日常工作等多項管理。同時對整個系統的分析、設計過程給出一個完整論證。

圖書管理系統是一種基於集中統一規劃的資料庫數據管理新模式。在對圖書、讀者的管理,其實是對圖書、讀者數據的管理。本系統的建成無疑會為管理者對圖書管理系統提供極大的幫助。

2 系統設計
2.1 系統指導思想和建設目標
2.1.1 系統指導思想

立足於校園實際,著眼於未來發展,建成符合標准化協議、通用性較強、實用的系統,以提高圖書信息的現代化管理水平,實現信息資源的共享。

2.1.1 系統建設目標

(1)要解決的問題:(以某學校為參照) 隨著辦公自動化水平的不斷提高,現在學校管理學生信息也逐步從手工轉到計算機自動化信息處理階段。設計一個功能完整、操作簡便、界面友好的學生信息管理系統已經是勢在必行的了。

(2)系統開發的目的:提高圖書管理工作的效率,減少相關人員的工作量,使學校的圖書管理工作真正做到科學、合理的規劃,系統、高效的實施。

(3)系統名稱:圖書管理系統

2.2 總體功能設計
系統要能實現如下功能:

l 登錄系統:注銷用戶、系統退出。

l 管理:用戶管理、圖書管理、讀者管理、借閱管理。

l 查詢:圖書查詢、讀者查詢、借閱查詢。

l 報表列印:所有圖書、借出圖書、庫存圖書、所有讀者。

l 幫助:使用說明、關於。

3 資料庫設計
3.1 資料庫系統的選擇
本系統是一個中小型管理系統,運行環境是Windows2000 server,因此使用Windows環境下最容易使用且功能還可以的Microsoft Access 2000 作為後台的資料庫系統。

3.2 需求分析
圖3 圖書流通數據流圖

1.2

判斷能

否借書

索書

信息

讀 者

1.2

辦理借

書手續

讀者信息

查詢結果

借書申請

被借圖書

借書結果

借書信息

被借圖書復本量

(b) 借書

借閱

3

讀者

1

圖書

5

1.1

圖書

查詢

借書信息

查詢

4

判斷

2

判斷結果

索書

信息

圖書信息

讀 者

1

借書

2

還書

讀 者

申請借書

還書申請

借書結果

還書結果

(a) 頂層數據流圖

3

辦借
書證

讀者信息

辦證信息

需求分析是資料庫設計首先要做的工作,通過需求分析,我們作出了圖書管理系統的各層數據流圖,圖3是圖書流通數據流圖(圖中省略了「還書」和「辦理借書證」的數據流圖)。

在數據流圖的基礎上,定義數據字典。數據字典是關於資料庫中數據的描述,它的作用是在軟體分析和設計過程中為有關人員提供關於數據描述信息的查詢,以保證數據的一致性。下面在圖3的基礎上舉例說明數據字典的定義。

圖3中涉及很多數據項,其中數據項「讀者編號」可以描述如下:

數據項名:讀者編號

別名:讀者條碼

含義:唯一標識每個讀者

類型:字元型

取值范圍:00000000至99999999

取值含義:順序編號

「讀者」一個數據結構,它可以描述如下:

數據結構名:讀者

含義說明:是圖書管理系統的數據結構之一,定義了一個讀者的有關信息

組成:讀者編號,姓名,性別,單位

數據流「借閱記錄」可描述如下:

數據流名:借閱記錄

說明:讀者的借書記錄

數據來源:辦理借閱手續

數據去向:借閱

數據結構:讀者編號、圖書館藏號、借閱日期

數據存儲「借閱」可以描述如下:

數據存儲名:借閱

說明:記錄讀者的借書情況

流出數據流:借閱記錄

流入數據流:借閱記錄

數據描述:讀者編號、圖書館藏號、借閱日期

數據量:每年5000條以上

存取方式:隨機存取

處理過程「判斷能否借書」可描述如下:

處理過程「判斷能否借書」

說明:根據讀者的已借書情況可被借圖書的館藏情況判斷讀者能否借書

輸入:借閱記錄、讀者信息、被借圖書信息

輸出:能否借書的標志

處理:讀者提出借書請求後,先判斷該讀者以前的借書量是否達到了10本,如果達到了10本,則不能再借書,如果沒有達到10本,則再判斷讀者要借的圖書的可借量是否為0,如果不為0,則該書可以借出。

3.3 資料庫設計
在圖書管理系統中,資料庫設計占重要位置,資料庫設計質量的優劣,可直接影響到資料庫數據的冗餘度、數據的一致性、數據丟失等問題。下面就系統資料庫規范化設計進行說明。

3.3.1 資料庫設計的理論指導

資料庫設計的理論指導是範式理論,其主要內容如下:

1)如果關系模式R,其所有的域為單純域則稱R是規范化的關系,或稱第一範式 (1NF)

2)如果關系模式R為第一範式,且每個非主屬性完全函數依賴於碼,則模式R為第二範式(2NF)。

3) 如果關系模式R為第二範式,且每個非主屬性非傳遞依賴於碼,則稱關系模式R為第三範式(3NF)。

4)關系模式R為第一範式,滿足函數依賴集合F,X和A均為R的屬性集合,且X不包含A,如果R滿足X->A且X必包含R的碼,稱關系模式R為BCNF範式。

3.3.2 資料庫設計

圖書管理系統資料庫常常要設計含有如下數據項:借書證號、姓名、單位、館藏號(館藏號為每本書上的條形碼號)、書名、分類號、作者、價格等。如何進行模式的設計呢?下面以圖書流通模塊所涉及的資料庫為例來說明。

圖 書

讀 者

借閱

m

n

借閱時間

館藏號

書名

分類號

作者

價格

借書證號

姓名

性別

圖4 圖書流通的E-R圖

屬於

單 位

1

n

單位名稱

單位編號

先設計圖書流通的實體-關系圖(E-R圖)。E-R圖由3個相關聯的部分構成,即實體、實體與實體之間的關系以及實體和關系的屬性。圖書流通過程中實體「圖書」與「讀者」之間的關系是借閱和被借閱的關系,實體「讀者」與「單位」之間的關系是屬於和被屬於的關系,「圖書」的屬性有「館藏號」、「書名」、「分類號」、「作者」、「價格」,「讀者」的屬性有「借書證號」、「姓名」、「性別」,「單位」的屬性有「單位編號」和「單位名稱」,「借閱」屬性「借書日期」,由此得出E-R圖如圖4。

從圖中可以知道:

①「借書證號」是唯一的,所以「借書證號」決定「姓名」,每位讀者應只屬於一個性別,所以「借書證號」也決定「性別」;

②「館藏號」是唯一的,所以「館藏號」決定「書名」、「分類號」、「作者」、「價格」;

③ 「單位編號」是唯一的,所以「單位編號」決定「單位名稱」;

④ 每位讀者在一個時間只能借一本書,所以「借書證號」 +「館藏號」決定「借閱時間」。

如果將這些數據項置於一個關系模式中,根據範式理論,該關系模式屬於1NF(第一範式),它存在刪除異常和冗餘等問題,不是理想的模式,因此要把它分解成滿足3NF或BCNF的關系模式。根據範式理論和E-R圖轉換成關系模型的規則,上面的E-R圖可轉換為4個關系模式:①圖書(館藏號、書名、分類號、作者、價格);②讀者(借書證號、姓名、性別、單位編號);③借閱(借書證號、館藏號、借閱時間),④單位(單位編碼、單位名稱),其中打下劃線的為碼,這樣就解決了插入、刪除和數據冗餘等問題。

我們對數據的結構進行詳細的分析,按照上述的設計思想,共設計了讀者表,書目表,館藏表,流通表等百餘張數據表,然後創建視圖和存儲過程。下面舉例說明:

讀者表:借書證號、姓名、單位、讀者類別、職稱等欄位;

書目表:館藏號、ISBN、題名、作者、出版社、復本數、語種、文獻類型、版次等欄位;

館藏表:館藏號、索書號、分類號、種次號、館藏位置、單價、出版日期等欄位;

流通表:借書證號、館藏號、借期、還期、續借、應還期、操作員等欄位;

借閱規則表:讀者類別編碼、圖書類別編碼、限借冊數、每期天數、續借天數、過期日期、罰金等欄位。

讀者類別表:讀者類別編碼、讀者類別等欄位。

圖書類別表:圖書類別編碼、圖書類別等欄位。

3.4 資料庫索引
建立索引是加快查詢速度的有效手段,資料庫的每一個表建立了主鍵,主鍵由一個或幾個欄位組成,每一個表都按主鍵建立了索引,部分表為了滿足查詢和排序的需要,除建立主索引外,還建立了次索引。例如在查詢時要用到「館藏號」、「作者」、「題名」等條件來查找圖書,因此,在書目表上除了對主鍵「館藏號」建立了主索引外,也對「作者」、「書名」等建立了次索引。

3.5 視圖
視圖是從一個或幾個基本表導出的表,它是定義在基本表之上的,它是一個虛表,資料庫中只存放視圖的定義,而不存放視圖對應的數據,數據仍然存放在原來的基本表中。通過定義視圖,可以使用戶眼中的資料庫結構簡單、清晰,並可以簡化用戶的數據查詢操作。由於本系統數據表較多,表中的欄位多,為了簡化對表的操作,我們創建了圖書_按書名查詢、期刊_按刊名查詢、期刊_按編輯部查詢、借閱規則查詢、待還書查詢、超期記錄查詢等30餘個視圖。

3.6 存儲過程
存儲過程是一段經過編譯的程序代碼,存放在資料庫伺服器端。通過調用適當的存儲過程,可在伺服器端處理大量數據,再將處理結果送到客戶端。這樣可減少數據在網路上的傳送,消除網路阻塞現象;例如:要查詢某條記錄,若該記錄在表中的順序號是10000,不採用存儲過程,伺服器將從1至於10000條記錄數據逐條送至客戶端,採用存儲過程後,由於過程是經過編譯的並且是在本地,不需要通過網路,因此能很快查出所需記錄並將結果送到客戶端,大大減少了網上數據傳輸量。存儲過程另一好處是可供不同的開發工具調用,如PB、VB、ASP、Delphi等開發工具均可調用。在流通模塊和WEB查詢模塊上均有圖書檢索功能,實際上調用同一存儲過程完成的。本系統建立了60多個存儲過程,實現諸如借還書處理、新書入庫統計、編目入館藏、讀者統計、生成索書號等功能。

3.7 資料庫調用
採用ODBC介面實現資料庫的調用,採用ADO介面調用。

4 條形碼的使用
條形碼具有唯一性和一次輸入後就可反復使用的優點,利用條形碼技術作為信息快速輸入的手段可迅速且不易發生錯誤地處理圖書管理業務。本系統使用條形碼作為圖書和讀者的標識,實現標識的唯一性。

使用條碼後,能夠使圖書管理工作更加簡單、快捷、不易出錯。例如,當一本書具有唯一條形碼標識,每位讀者也具有唯一條形碼標識時,圖書的借閱、查詢就十分便捷了。應用條形碼取代了以往填寫書袋卡、借書證,核對借閱時間等繁瑣的手工勞動。讀者在借書時只要將借書證給工作人員,工作人員只需登錄借書系統,用條形碼閱讀器掃描讀者借書證上的條形碼,屏幕就會顯示出該讀者的信息,包括讀者姓名、單位、可借幾本書、已借幾本書、是否過期、有無罰款等。如可以借書,工作人員只需用條形碼閱讀器掃描該讀者所需借的書上的條形碼符號後,該書的書名和條形碼等信息都從資料庫中調出顯示在屏幕上,自動記錄在該讀者的借閱檔案中,借書工作即告完成。一般借一本書僅需 1至 2秒鍾。操作完後,計算機自動地將該借閱者和借閱的圖書號碼輸入對應資料庫中,並自動提示借閱期限。

參考文獻
[1] 王珊著、資料庫系統原理教程,清華大學出版社,2002.1

[2] 齊治昌等著、軟體工程,高等教育出版社,2002.1

[3] 網路資源

㈧ 資料庫設計說明書,由誰編寫,寫給誰看

開發團隊
如果你們對於資料庫和應用程序的開發有分工的話,那麼所有關於資料庫方面的都有資料庫那邊的人寫,如果沒有分工,就你們自己寫
存檔的目的一個是便於團隊之間的溝通,再一個就是方便事後對程序或者資料庫進行修正\升級等, 會有一定記錄來告訴你資料庫中各個表\欄位等都是什麼含義,以及他們之間的關系, 尤其對一些年久失修的應用程序來說,就不用全部看代碼了