01 內容概述
講解數據庫設計方法和技術。主要討論數據庫設計的特點,數據庫設計的基本步驟,數據庫設計過程中數據字典的內容,數據庫設計各個階段的設計目標、、方法等。其中重點是概念結構的設計和邏輯結構的設計,這也是數據庫設計過程中最重要的兩個環節。
概念結構的設計著重介紹了E-R模型的基本概念和圖示方法。應重點掌握實體型、屬性和聯系的概念,理解實體型之間的一對一、一對多和多對多聯系。掌握E-R模型的設計以及把E-R模型轉換為關系模型的方法。學習本章要努力掌握書中討論的基本方法,還要能在實際工作中運用這些思想設計符合應用需求的數據庫模式和數據庫應用系統。
本章內容的實踐性較強,教師可以少講,讓學生多讀書并進行實踐。
02 本章目標
了解數據庫設計的重要性和數據庫設計在信息系統開發和建設中的核心地位。掌握數據庫設計方法和步驟,使學生具有設計數據庫模式以及開發數據庫應用系統的基本能力,能在實際工作中運用這些知識、技術和方法,設計符合應用需求的數據庫及其應用系統。
03 重點和難點
重點:掌握數據庫設計步驟和數據庫設計過程中的各級模式設計方法。特別是數據庫概念結構的設計和邏輯結構的設計,這是數據庫設計過程中最重要的兩個環節。牢固掌握用E-R圖來表示概念模型的方法,掌握E-R圖的設計,E-R圖向關系模型的轉換。
難點:技術上的難點是E-R圖的設計和數據模型的優化,包括對現實世界進行抽象的能力,提取實體、屬性、實體型之間的聯系,正確劃分實體與屬性的能力。如何把第6章關系數據理論與本章結合,用關系數據理論指導數據庫的邏輯設計。真正的難點是理論與實際的結合。
同學們一般缺乏實際經驗,缺乏對實際問題解決的能力。特別是缺乏應用領域的知識。而數據庫設計需要設計人員對應用環境、專業業務有具體深入的了解,這樣才能設計出符合具體領域要求的數據庫及其應用系統。
因此,要在完成本章習題的基礎上認真完成大作業。體會這些要點,從而真正掌握本章講解的知識、方法和技術。
04 客觀題
1. 數據庫設計的概念設計階段,表示概念結構的常用方法和描述工具是。
2. 在關系數據庫設計中,設計關系模式是數據庫設計中階段的任務 。
3. 如何構造出一個合適的數據邏輯結構是主要解決的問題 。
4. 概念結構設計是整個數據庫設計的關鍵數據庫設計與應用答案,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的。
5. 數據庫設計中,確定數據庫存儲結構,即確定關系、索引、聚簇、日志、備份等數據的存儲安排和存儲結構,這是數據庫設計的。
6. 數據庫物理設計完成后,進入數據庫實施階段,下述工作中,一般不屬于實施階段的工作。
7. 數據庫設計可劃分為六個階段,每個階段都有自己的設計內容,“為哪些關系,在哪些屬性上建什么樣的索引”這一設計內容應該屬于設計階段。
8. 在關系數據庫設計中,設計關系模式是數據庫設計中階段的任務。
9. 在關系數據庫設計中,對關系進行規范化處理,使關系達到一定的范式,例如達到3NF,這是階段的任務。
10. 概念模型是現實世界的第一層抽象,這一類最著名的模型是 。
11. 對實體和實體之間的聯系采用同樣的數據結構表達的數據模型為 。
12. 在概念模型中的客觀存在并可相互區別的事物稱。
13. 區分不同實體的依據是。
14. 公司有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有多名職員,從職員到部門的聯系類形是 。
多對一
15. 關系數據庫中,實現實體之間的聯系是通過關系與關系之間的 。
16. 數據流程圖是用于數據庫設計中階段的工具。
17. 在數據庫設計中,將ER圖轉換成關系數據模型的過程屬于。
18. 子模式DDL是用來描述。
19. 關系數據庫的規范化理論主要解決的問題是。
20. 數據庫設計可劃分為六個階段,每個階段都有自己的設計內容,“為哪些關系在哪些屬性上建什么樣的索引”這一設計內容應該屬于設計階段。
21. 數據庫物理設計完成后,進入數據庫實施階段,下述工作中,一般不屬于實施階段的工作。
22. 從ER圖導出關系模型時,如果實體間的聯系是M:N的,下列說法中正確的是。
23. 在ER模型中,如果有3個不同的實體型,3個M:N聯系,根據ER模型轉換為關系模型的規則,轉換為關系的數目是。
05 主觀題
“三分,七分,十二分”是數據庫建設的基本規律。
正確答案: 技術 管理 基礎數據
十二分基礎數據強調了數據的 、、和是數據庫建設中的重要的環節。
正確答案: 整理 收集 組織 不斷更新
簡述數據庫設計的特點。
正確答案: 數據庫設計既是一項涉及多學科的綜合性技術又是一項龐大的工程項目。其主要特點有:1)數據庫建設是硬件、軟件和干件(技術與管理的界面)的結合。2)從軟件設計的技術角度看,數據庫設計應該和應用系統設計相結合,也就是說,整個設計過程中要把結構(數據)設計和行為(處理)設計密切結合起來。
規范化理論對數據庫設計有什么指導意義?
正確答案: 規范化理論為數據庫設計人員判斷關系模式優劣提供了理論標準,可用以指導關系數據模型的優化,用來預測模式可能出現的問題,為設計人員提供了自動產生各種模式的算法工具,使數據庫設計工作有了嚴格的理論基礎。
簡述數據庫設計過程。
正確答案: 這里只概要列出數據庫設計過程的六個階段:1)需求分析2)概念結構設計3)邏輯結構設計4)數據庫物理設計5)數據庫實施6)數據庫運行和維護這是一個完整的實際數據庫及其應用系統的設計過程。不僅包括設計數據庫本身,還包括數據庫的實施、數據庫運行和維護。設計一個完善的數據庫應用系統往往是上述六個階段的不斷反復。
規范設計法從本質上看仍然是手工設計方法,其基本思想是 和。
正確答案: 過程迭代 逐步求精
數據庫的生命周期可分為兩個階段:一是數據庫需求分析和 ;二是數據庫實現和。
正確答案: 設計階段 運行階段
簡述數據庫設計過程的各個階段上的設計描述。
正確答案: 各階段的設計要點如下:
1)需求分析:準確了解與分析用戶需求(包括數據與處理)。
2)概念結構設計:通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。
3)邏輯結構設計:將概念結構轉換為某個DBMS所支持的數據模型,并對其進行優化。
4)數據庫物理設計:為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)。
5)數據庫實施:設計人員運用DBMS提供的數據語言、工具及宿主語言,根據邏輯設計和物理設計的結果建立數據庫,編制與調試應用程序,組織數據入庫,并進行試運行。
6)數據庫運行和維護:在數據庫系統運行過程中對其進行評價、調整與修改。
簡述數據庫設計過程中結構設計部分形成的數據庫模式。
正確答案: 數據庫結構設計的不同階段形成數據庫的各級模式,即:在概念設計階段形成獨立于機器特點,獨立于各個DBMS產品的概念模式,在本篇中就是E-R圖;?在邏輯設計階段將E-R圖轉換成具體的數據庫產品支持的數據模型,如關系模型,形成數據庫邏輯模式;然后在基本表的基礎上再建立必要的視圖(View),形成數據的外模式;在物理設計階段,根據DBMS特點和處理的需要,進行物理存儲安排,建立索引,形成數據庫內模式。
需求分析階段的設計目標是什么?調查的內容是什么?
正確答案: 需求分析階段的設計目標是通過詳細調查現實世界要處理的對象(組織、部門、企業等),充分了解原系統(手工系統或計算機系統)工作概況,明確用戶的各種需求,然后在此基礎上確定新系統的功能。調查的內容是“數據”和“處理”,即獲得用戶對數據庫的如下要求:(1)信息要求。指用戶需要從數據庫中獲得信息的內容與性質。由信息要求可以導出數據要求,即在數據庫中需要存儲哪些數據。(2)處理要求。指用戶要完成什么處理功能,對處理的響應時間有什么要求,處理方式是批處理還是聯機處理。(3)安全性與完整性要求。
數據字典的內容和作用是什么?
正確答案: 數據字典是系統中各類數據描述的集合。數據字典的內容通常包括:數據項、數據結構、數據流、數據存儲、處理過程五個部分其中數據項是數據的最小組成單位,若干個數據項可以組成一個數據結構。數據字典通過對數據項和數據結構的定義來描述數據流、數據存儲的邏輯內容。數據字典的作用:數據字典是關于數據庫中數據的描述,在需求分析階段建立,是下一步進行概念設計的基礎,并在數據庫設計過程中不斷修改、充實、完善。
什么是數據庫的概念結構?試述其特點和設計策略。
正確答案: 概念結構是信息世界的結構,即概念模型,其主要特點是:(1)能真實、充分地反映現實世界,包括事物和事物之間的聯系,能滿足用戶對數據的處理要求。是對現實世界的一個真實模型。(2)易于理解,從而可以用它和不熟悉計算機的用戶交換意見,用戶的積極參與是數據庫的設計成功的關鍵。(3)易于更改,當應用環境和應用要求改變時,容易對概念模型修改和擴充。(4)易于向關系、網狀、層次等各種數據模型轉換。
概念結構的設計策略通常有四種:
? 自頂向下。即首先定義全局概念結構的框架,然后逐步細化;
? 自底向上。即首先定義各局部應用的概念結構,然后將它們集成起來,得到全局概念結構;
? 逐步擴張。首先定義最重要的核心概念結構,然后向外擴充,以滾雪球的方式逐步生成其他概念結構,直至總體概念結構;
? 混合策略。即將自頂向下和自底向上相結合,用自頂向下策略設計一個全局概念結構的框架數據庫設計與應用答案,以它為骨架集成由自底向上策略中設計的各局部概念結構。
什么叫數據抽象?試舉例說明。
正確答案: 數據抽象是對實際的人、物、事和概念進行人為處理,抽取所關心的共同特性,忽略非本質的細節,并把這些特性用各種概念精確地加以描述,這些概念組成了某種模型。如分類這種抽象是:定義某一類概念作為現實世界中一組對象的類型。這些對象具有某些共同的特性和行為。它抽象了對象值和型之間的“is of”的語義。在E-R模型中,實體型就是這種抽象。例如在學校環境中,李英是老師,表示李英是教師類型中的一員,則教師是實體型,李英是教師實體型中的一個實體值,具有教師共同的特性和行為:在某個系某個專業教學,講授某些課程,從事某個方向的科研。
簡述數據庫概念結構設計的重要性和設計步驟。
正確答案: 重要性:數據庫概念設計是整個數據庫設計的關鍵,將在需求分析階段所得到的應用需求首先抽象為概念結構,以此作為各種數據模型的共同基礎,從而能更好地、更準確地用某一DBMS實現這些需求。設計步驟:概念結構的設計方法有多種,其中最經常采用的策略是自底向上方法,該方法的設計步驟通常分為兩步:第1步是抽象數據并設計局部視圖,第2步是集成局部視圖,得到全局的概念結構。
什么是E-R圖?構成E-R圖的基本要素是什么?
正確答案: E-R圖為實體-聯系圖,提供了表示實體型、屬性和聯系的方法,用來描述現實世界的概念模型。構成E-R圖的基本要素是實體型、屬性和聯系,其表示方法為:
? 實體型:用矩形表示,矩形框內寫明實體名;
? 屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來;
?聯系:用菱形表示,菱形框內寫明聯系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型(1 : 1,1 : n或m : n)。
數據庫設計分為以下六個階段、、、、和。
正確答案: 需求分析 概念結構設計 邏輯結構設計 物理設計階段 數據庫實施階段 數據庫運行和維護階段
為什么要視圖集成?視圖集成的方法是什么?
正確答案: 在對數據庫系統進行概念結構設計時一般采用自底向上的設計方法,把繁雜的大系統分解子系統。首先設計各個子系統的局部視圖,然后通過視圖集成的方式將各子系統有機的融合起來,綜合成一個系統的總視圖。這樣設計清晰,由簡到繁。由于數據庫系統是從整體角度看待和描述數據的,因此數據不再面向某個應用而是整個系統。因此必須進行視圖集成,使得數據庫能被全系統的多個用戶、多個應用共享使用。一般說來,視圖集成可以有兩種方式:? 多個分E-R圖一次集成;? 逐步集成,用累加的方式一次集成兩個分E-R圖。無論采用哪種方式,每次集成局部E-R圖時都需要分兩步走:(1)合并。解決各分E-R圖之間的沖突,將各分E-R圖合并起來生成初步E-R圖。(2)修改和重構。消除不必要的冗余,生成基本E-R圖。
什么是數據庫的邏輯結構設計?簡述其設計步驟。
正確答案: 數據庫的邏輯結構設計就是把概念結構設計階段設計好的基本E-R圖轉換為與選用的DBMS產品所支持的數據模型相符合的邏輯結構。設計步驟為:(1)將概念結構轉換為一般的關系、網狀、層次模型;(2)將轉換來的關系、網狀、層次模型向特定DBMS支持下的數據模型轉換;(3)對數據模型進行優化。
簡述把E-R圖轉換為DBTG模型和關系模型的轉換規則。
正確答案: E-R圖向DBTG模型的轉換規則:1)每個實體型轉換為記錄型,實體的屬性轉換為記錄的數據項;2)實體型之間1:n(n≥1)的聯系轉換為一個系,沒有任何聯系的實體型轉換為奇異系;3)K(K≥2)個實體型之間多對多的聯系,引入一個連結記錄,形成K個實體型和連結記錄之間的K個系。連結記錄的屬性由諸首記錄的碼及聯系屬性所組成;4)同一實體型內的1:n,n:m聯系,引入連結記錄,轉換為兩個系。
你能給出由E-R圖轉換為IMS模型的轉換規則嗎?
正確答案: E-R圖向IMS模型的轉換規則:1)每個實體型轉換為記錄型,實體的屬性轉換為記錄的數據項;2)實體型之間1:n(n≥1)的聯系轉換記錄型之間的有向邊;3)實體型之間m:n(m>1,n>1)的聯系則分解成一對多聯系,再根據2)轉換;4)K(K≥2)個實體型之間多對多的聯系,可先轉換成多對兩個實體型之間的聯系,再根據3)轉換。
簡述數據庫物理設計的內容和步驟。
正確答案: 數據庫在物理設備上的存儲結構與存取方法稱為數據庫的物理結構,它依賴于給定的DBMS。為一個給定的邏輯數據模型選取一個最適合應用要求的物理結構,就是數據庫的物理設計的主要內容。數據庫的物理設計步驟通常分為兩步:(1)確定數據庫的物理結構,在關系數據庫中主要指存取方法和存儲結構;(2)對物理結構進行評價,評價的重點是時間和空間效率。
數據輸入在實施階段的重要性是什么?如何保證輸入數據的正確性?
正確答案: 數據庫是用來對數據進行存儲、管理與應用的,因此在實施階段必須將原有系統中的歷史數據輸入到數據庫。數據量一般都很大,而且數據來源于部門中的各個不同的單位。數據的組織方式、結構和格式都與新設計的數據庫系統有相當的差距,組織數據錄入就要將各類源數據從各個局部應用中抽取出來,分類轉換,最后綜合成符合新設計的數據庫結構的形式,輸入數據庫。因此這樣的數據轉換、組織入庫的工作是相當費力費時的工作。特別是原系統是手工數據處理系統時,各類數據分散在各種不同的原始表格、憑證、單據之中。數據輸入工作量更大。保證輸入數據正確性的方法:為提高數據輸入工作的效率和質量,應該針對具體的應用環境設計一個數據錄入子系統,由計算機來完成數據入庫的任務。在源數據入庫之前要采用多種方法對它們進行檢驗,以防止不正確的數據入庫。
什么是數據庫的再組織和重構造?為什么要進行數據庫的再組織和重構造?
正確答案: 數據庫的再組織是指:按原設計要求重新安排存儲位置、回收垃圾、減少指針鏈等,以提高系統性能。數據庫的重構造則是指部分修改數據庫的模式和內模式,即修改原設計的邏輯和物理結構。數據庫的再組織是不修改數據庫的模式和內模式的。進行數據庫的再組織和重構造的原因:數據庫運行一段時間后,由于記錄不斷增、刪、改,會使數據庫的物理存儲情況變壞,降低了數據的存取效率,數據庫性能下降,這時DBA就要對數據庫進行重組織。DBMS一般都提供數據重組織用的實用程序。數據庫應用環境常常發生變化,如增加新的應用或新的實體,取消了某些應用,有的實體與實體間的聯系也發生了變化等,使原有的數據庫設計不能滿足新的需求,需要調整數據庫的模式和內模式。這就要進行數據庫重構造。
數據庫實施階段包括兩項重要的工作,一項是 ,另一項是應用程序的和。
正確答案: 組織數據入庫 編碼 調試
根據模型應用的不同目的,可以將這些模型劃分為兩類,它們分別屬于兩個不同的層次。第一類是,第二類是。
正確答案: 概念模型 數據模型
用 方法來設計數據庫的概念模型是數據庫概念設計階段廣泛采用的方法。
正確答案: 實體—聯系方法(E-R)
概念模型有以下特點:、 、 、。
正確答案: 真實性 易理解性 易修改性 易轉換性
在E-R模型向關系模型轉換時,M:N的聯系轉換為關系模式時,其碼包括 。
正確答案: M、N端實體的碼
關系數據庫的規范化理論是數據庫 的一個有力工具;ER模型是數據庫的設計的一個有力工具。
正確答案: 邏輯設計 概念結構
數據庫的物理設計通常分為兩步:(1)確定數據庫的 ,(2)對其進行評價,評價的重點是和。
正確答案: 物理結構 時間 空間效率
任何DBMS都提供多種存取方法。常用的存取方法有 、 、 等。
正確答案: 索引(index)方法 HASH方法 聚簇()方法
確定數據庫存儲結構主要指確定 、 、 、 、等數據的存儲安排和存儲結構,確定系統配置參數等。
正確答案: 關系 索引 聚簇 日志 備份
是數據庫中存放數據的基本單位。
正確答案: 表
在數據庫運行階段,對數據庫經常性的維護工作主要是由 完成的。
正確答案: 數據庫管理員 (DBA)
客觀存在并可相互區別的事物稱為 ,它可以是具體的人、事、物,也可以是抽象的概念或聯系。
正確答案: 實體
唯一標識實體的屬性集稱為 。
正確答案: 碼
實體之間的聯系有 、 、三種。
正確答案: 一對一 一對多 多對多
如果兩個實體之間具有M:N聯系,則將它們轉換為關系模型的結果是 個關系。
正確答案: 3
ER模型是對現實世界的一種抽象,它的主要成分是 、聯系和 。
正確答案: 實體 屬性
需求調查和分析的結果最終形成 ,提交給應用部門,通過后作為以后各個設計階段的依據。
正確答案: 需求分析說明書 評審
表達了數據和處理的關系, 則是系統中各類數據描述的集合,是進行詳細的數據收集和數據分析所獲得的主要成果。
正確答案: 數據流圖 數據字典
數據字典中應包括對以下幾部分數據的描述: 、 、 。
正確答案: 數據項 數據結構 數據流
各分E-R圖之間的沖突主要有三類: 、和 。
正確答案: 屬性沖突 命名沖突 結構沖突
-The End-