官术网_书友最值得收藏!

1.3.1 數據庫設計步驟

數據庫設計一般要經過:確定創建數據庫的目的、確定數據庫中需要的表、確定該表中需要的字段、確定主關鍵字和確定表之間的關系等步驟。

1.確定創建數據庫的目的

設計數據庫的第一個步驟是確定數據庫的目的,即需求分析。用戶需要確定數據庫保存哪些信息。分析用戶對數據庫的具體要求,這是整個數據庫設計的起點。由用戶的信息要求可以導出數據要求,即在數據庫中需要存儲哪些數據。

(1)需求分析的任務

通過詳細調查現實世界要處理的對象(組織、部門、企業等),充分了解原系統(手工系統或計算機系統)工作概況,明確用戶的各種需求。

在此基礎上確定新系統的功能。新系統要充分考慮今后可能的擴充和改變,不能僅僅按當前應用需求來設計數據庫。

(2)需求分析的重點

需求分析的重點是調查、收集與分析用戶在數據管理中的信息要求、處理要求、安全性與完整性要求。

①信息要求。即用戶需要從數據庫中獲得信息的內容與性質。由用戶的信息要求可以導出數據要求,即在數據庫中需要存儲哪些數據。

②處理要求。包含對處理功能的要求、對處理的響應時間的要求、對處理方式的要處理/聯機處理)等。

③安全性與完整性要求。安全性是指用戶需要如何保護數據才能不被未授權的用戶破完整性是指用戶需要如何檢查和控制不合語義的、不正確的數據,防止它們進入數據庫。

具體操作就是與將要使用數據庫的人員進行交流,集體討論需要使用數據庫解決的問題,并描述需要數據庫生成的報表,同時收集當前用于記錄數據的表格。

2.確定該數據庫中需要的表

表的確定是數據庫設計過程中的關鍵步驟。在設計表時,應按以下設計原則對信息進行分類。

(1)表不應包含備份信息,表間不應有重復信息。

如果每條信息只保存在一個表中,則數據庫管理員只需在一處進行更新,這樣效率更高,同時也消除了包含不同信息重復項的可能性。例如,每個學生的地址和電話號碼只在一個表中保存一次。

(2)每個表應該只包含關于一個主題的信息。

如果每個表只包含一個主題的信息,則可以獨立于其他主題維護每個主題的信息。例如,將學生的住址與學生選課成績存在不同表中,則在刪除某個學生成績后仍然可以保留學生的信息。

3.確定表中需要的字段

每個表都包含關于同一主題的信息,并且表中的字段應包含關于該主題所需的全部信息。例如,課程表中可以包含課程的課程編號、課程名稱、課程類別和學分等字段。在確定每個表的字段時,需要注意以下問題:

(1)每個字段直接與表的主題相關;

(2)不包含推導或計算的數據(表達式的計算結果),即表中字段存儲的是原始數據;

(3)包含表的主題所需的所有信息;

(4)以最小的邏輯單位保存信息。例如,在工資表中基本工資、獎金、津貼等應設置為不同的字段,不能只保存為工資一個字段。

4.確定主關鍵字

數據庫中的每個表必須包含表中唯一確定每個記錄的字段或字段集,將這種字段或字段集確定為主鍵(主關鍵字)。例如,學生表中學生編號可以唯一確定某一個學生,則學生編號可以定為主鍵。

5.確定表之間的關系

為了能夠滿足實際應用需求,有些信息需要從幾張表中得到,這就需要將多表進行連接,因此一項重要的操作就是要確定數據庫中表與表之間的關系。有些字段在本表中不是關鍵字,但在其他表中是關鍵字,那么它就是外部關鍵字。表之間的關系通過外部關鍵字聯系起來。例如,學生編號在學生表中為主鍵,在選課成績表中并不是主鍵,而是外鍵。學生表和選課成績表之間通過學生編號產生聯系。

6.優化設計

在設計完成需要的表、字段和關系后,就應對該設計進行檢查并找出任何可能存在的不足。如果不能滿足要求,則要返回到之前幾個階段進行調整并修改。

用Access創建表,指定表之間的關系,并且在每個表中輸入充足的示例數據以驗證設計。可通過創建查詢,檢查結果與預期結果是否一致,驗證數據庫中的關系是否正確;創建簡單的窗體和報表,檢查顯示數據是否是所期望的;最后查找不需要的重復數據,并將其去掉。以上操作如發現問題,需要及時修改該設計。

7.輸入數據并創建其他數據對象

如果表的結構已達到了設計要求,則可繼續進行操作并在表中添加所有已有的實際數據,創建所需要的相應查詢、窗體、報表、數據訪問頁、宏和模塊等數據對象,完成數據庫應用系統。

主站蜘蛛池模板: 钟山县| 留坝县| 平远县| 益阳市| 阳泉市| 会东县| 拜泉县| 黑水县| 偏关县| 海丰县| 瑞丽市| 密山市| 河南省| 那坡县| 隆德县| 丁青县| 海晏县| 宽城| 黑河市| 建瓯市| 焦作市| 信阳市| 永顺县| 西峡县| 德兴市| 三门峡市| 潢川县| 巴彦淖尔市| 临清市| 凭祥市| 定兴县| 天镇县| 九龙城区| 达孜县| 那坡县| 盖州市| 寻甸| 河西区| 扶风县| 龙泉市| 临泽县|