数据库系统概念总结:第七章 数据库设计和E-R模型
生活随笔
收集整理的這篇文章主要介紹了
数据库系统概念总结:第七章 数据库设计和E-R模型
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
周末無事水文章,期末備考的總結資料
第七章 數據庫設計和E-R模型
7.1 設計過程概覽
7.1.1 設計階段
- 需要完整地刻畫未來數據庫用戶的數據需求
- 選擇數據模型,并采用所選數據模型的概念將這些需求轉化為數據庫的概念模式
- 完善的概念模式還指明企業的功能需求
- 將高層概念模式映射到將使用的數據庫系統的實現數據模式上。實現數據模型通常是關系數據模型,該階段通常包括將以實體-聯系模型定義的概念模式映射到關系模式
- 將所得到的系統特定的數據庫模式使用到后續的物理設計階段
7.1.2 設計選擇
- 需要避免的兩個問題:
–冗余
–不完整
7.2 實體-聯系(entity-relationship,E-R)模型
7.2.1 實體集
- 實體:現實世界中可區別與所有其他對象的一個“事務”或“對象”
- 實體集:相同類型即具有相同性質(或屬性)的一個實體集合
7.2.2 聯系(relationship)集
- 聯系:指多個實體間的相互關聯
- 聯系集:相同類型聯系的集合
7.2.3 屬性
- 按屬性類型進行劃分:
–簡單和復合屬性
–單值和多值屬性
–派生屬性
7.3 約束
7.3.1 映射基數
- 映射基數(mapping cardinality):表示一個實體通過一個聯系集能關聯的實體的個數
–一對一
–一對多
–多對一
–多對多
7.3.2 參與約束
- 如果實體集E中的每個實體都參與到聯系集R的至少一個聯系中,實體集E在聯系集R中的參與稱為全部的;若只有部分參與則稱為部分的。
7.3.3 碼
- 參照第二章總結
7.4 從實體集中刪除冗余屬性
7.5實體-聯系圖
7.5.1 主要構件
- 分成兩部分的矩形:實體集
- 菱形:聯系集
- 未分割的矩形:聯系集的屬性
- 線段:實體集連接到聯系集
- 雙線:實體在聯系集中的參與度
- 雙菱形:連接到弱實體集的標志性聯系集
7.5.2 映射基數
- 例子
- 基數約束
–圖中0…*說明導師可以有零個或多個學生
–圖中1…1說明每個學生有且只有一個導師
7.5.3 復雜的屬性
7.5.4 角色
- 在菱形和矩形之間的連線上進行標注來表示角色
7.5.5 非二元的聯系集
7.5.6 弱實體集
- 定義:沒有足夠的屬性以形成主碼的實體集稱作弱實體集(weak entity set)
- 弱實體集必須與另一個稱作標識(identifying)或屬主實體集(owner entity set)的實體集關聯才能有意義。標示性聯系是從弱實體集到標識實體集多對一的,并且弱實體集在聯系中的參與是全部的
- 例子
–弱實體集的分辨符以虛下劃線標明,而不是實線
–關聯弱實體集和標識性強實體集的聯系集以雙菱形表示
7.6 轉換為關系模式
7.6.1 具有簡單屬性的強實體集的表示
7.6.2 具有復雜屬性的強實體集的表示
7.6.3 弱實體集的表示
7.6.4 聯系集的表示
7.7 實體-聯系設計問題
7.7.1 用實體集還是用屬性
- 選擇主要取決于被建模的enterprise 的結構,以及與所討論的屬性相關的語義。
7.7.2 用實體集還是用聯系集
- 可能的準則是指定一個關系集來描述實體之間發生的動作
7.7.3 二元還是n元聯系集
- 雖然可以用許多不同的二元關系集替換任何非二元(n元,n> 2)關系集,但是n元關系集更清楚地表明幾個實體參與單一關系
7.7.4 聯系屬性的布局
- 一個聯系的映射技術比率會影響聯系屬性的布局。英雌,一對一或一對多聯系集的屬性可以放到一個參與該聯系的實體集中,而不是聯系集中
7.8擴展的E-R特性
7.8.1 特化(Specialization)
- 在實體集內部進行分組的過程稱為特化
- 自頂向下
7.8.2 概化(Generalization)
- 概化是高層實體集與一個或多個底層實體集間的包含關系。對于所有實際應用來說,概化是特化的逆過程
- 自底向上
7.8.3 屬性繼承(Attribute Inheritance)
- 它是由特化和概化所產生的高層和底層實體的一個重要特性,高層實體集的屬性被底層實體集繼承
7.8.4 概化上的約束(Constraint)
- 哪些實體能成為給定低層實體集的成員
–條件定義的(condition-defined):低層實體集中,成員資格的確定基于實體集是否滿足一個顯示的條件或謂詞
–用戶定義的(user-defined):由數據庫用戶將實體指派給某個實體集 - 在一個概化中的實體是否可以屬于多個低層實體集
–不相交(disjoint):要求一個實體至多屬于一個低層實體集
–重疊(overlapping):同一個實體可以同時屬于同一個概化中的多個底層實體集 - 對概化的完全性約束(completeness constraint)
–全部概化或特化:每個高層實體必須屬于一個低層實體集
–部分概化或特化:允許一些高層實體不屬于任何低層實體集
7.8.5 聚類(Aggregation)
- 聚類是一種抽象,通過這種抽象,聯系被視為高層實體
7.9 數據建模的其他表示法
7.9.1 E-R圖的其他表示法
總結
以上是生活随笔為你收集整理的数据库系统概念总结:第七章 数据库设计和E-R模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库系统概念总结:第四章 中级SQL
- 下一篇: 数据库系统概念总结:第八章 关系数据库设