




已閱讀5頁,還剩57頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第五章數(shù)據(jù)庫物理模型設計,1,PPT學習交流,學習概念數(shù)據(jù)模型或邏輯數(shù)據(jù)模型轉換為物理數(shù)據(jù)模型的方法。了解如何將實體的1:1、1:N和N:M關系表示為表關系了解數(shù)據(jù)庫設計范式和規(guī)范化通過實踐案例學習從概念數(shù)據(jù)模型轉換物理數(shù)據(jù)模型的一般步驟,【學習目標】,2,PPT學習交流,一、數(shù)據(jù)庫模型轉換,5.1數(shù)據(jù)庫設計模型轉換,數(shù)據(jù)庫設計分為概念數(shù)據(jù)模型設計、邏輯數(shù)據(jù)模型設計、物理數(shù)據(jù)模型設計三個層次。在常規(guī)的數(shù)據(jù)庫設計中,將依次對這三種模型進行轉換設計。各個模型之間的元素對應關系如下表,3,PPT學習交流,二、數(shù)據(jù)模型轉換方案,數(shù)據(jù)模型轉換設計有兩種方案一種是由概念數(shù)據(jù)模型生成對應的邏輯數(shù)據(jù)模型,再從邏輯數(shù)據(jù)模型轉換生成物理數(shù)據(jù)模型;另一種是從概念數(shù)據(jù)模型直接轉換為對應的物理數(shù)據(jù)模型,4,PPT學習交流,數(shù)據(jù)模型之間轉化,概念數(shù)據(jù)模型(CDM),物理數(shù)據(jù)模型(PDM),現(xiàn)實世界,轉化,邏輯數(shù)據(jù)模型(LDM),轉化,轉化,抽取,5,PPT學習交流,當使用關系數(shù)據(jù)庫時,物理數(shù)據(jù)模型即為關系模型,其基本轉換原理如下:1)將每一個實體轉換成一個表,實體的屬性轉換為表的列,實體的標識符轉換為表的主鍵2)將實體關系轉化為表間的參照完整性約束,即通過設置外鍵來參照主鍵。根據(jù)關系的不同類型,通過外鍵參照主鍵的方式有所不同,數(shù)據(jù)模型轉換,6,PPT學習交流,表,表是數(shù)據(jù)庫中用來保存信息的一種數(shù)據(jù)結構,由數(shù)據(jù)模型中的實體轉化而來。一個表中記錄著關于實體的信息,它是數(shù)據(jù)庫組織的基本對象。,2.列,列是組成表的基本單位,由數(shù)據(jù)模型中的屬性轉化而來。一個表由多個列組成,每個列都有一個數(shù)據(jù)類型。,三、將實體轉化為表,7,PPT學習交流,主鍵是用來唯一標識表中每個記錄的一個或多個列的集合,由數(shù)據(jù)模型中的主標識符轉化而來。在物理數(shù)據(jù)模型中,每張表必須有一個主鍵。主鍵通常用pk表示.候選鍵也是用來唯一標識表中記錄的一個或多個列的集合,通常由數(shù)據(jù)模型中的次標識符轉化而來。候選鍵通常用ak表示,3.主鍵與候選鍵,8,PPT學習交流,外鍵是與其它表連接的公共列,這個列通常是其它表的主鍵。外鍵一般是由數(shù)據(jù)模型中的實體關系產(chǎn)生。外鍵通常用fk表示在系統(tǒng)物理數(shù)據(jù)模型設計中,對上述基本數(shù)據(jù)庫對象進行設計外,還包括數(shù)據(jù)庫的存儲過程、觸發(fā)器、視圖、索引、約束規(guī)則等設計。,4.外鍵,9,PPT學習交流,將實體轉換為表,首先,為每個實體定義一個表,表名與實體名相同。將實體的標識符作為表的主鍵。然后,實體的屬性轉換為表中的列,實體的標識符轉換為表的主鍵,10,PPT學習交流,確定代理鍵,在關系數(shù)據(jù)庫設計中,當數(shù)據(jù)表中的候選鍵都不適合當主鍵時(例如,候選鍵的內(nèi)容太大或者復合候選鍵包含的屬性太多),就會定義代理鍵作為主鍵。代理鍵由DBMS自動生成數(shù)字鍵值,且永不改變。,11,PPT學習交流,定義列的特性,實體屬性轉換為表的列后,必須為每個列指定其特性,包括數(shù)據(jù)類型、空值狀態(tài)、默認值及數(shù)值的約束。數(shù)據(jù)類型:每個DBMS都有自己的數(shù)據(jù)類型定義,對于每一列,應指明在該列中存儲何種類型的數(shù)據(jù)。空值狀態(tài):在表中插入新行時,某些列必須有值,對于這樣的列,將其標注為NOTNULL;某些列允許不輸入值,將其標注為NULL。默認值:默認值是指當插入新行時,如果用戶沒有顯式輸入某個列的值,則由DBMS自動設置為預先設定的值。數(shù)值的約束:一些列中的數(shù)據(jù)值可能有限制,這些限制稱為數(shù)據(jù)約束。,12,PPT學習交流,數(shù)據(jù)模型轉換數(shù)據(jù)庫設計步驟,為每個實體創(chuàng)建一個表,規(guī)范化所有表,創(chuàng)建表之間的主外鍵約束,概念模型,關系模型(物理模型),第1步,第2步,第3步,13,PPT學習交流,四、弱實體的轉換表示,前面描述的實體轉換為表的過程適用于所有的實體類型,但弱實體有時候需要特別的處理。弱實體在邏輯上依賴于另一個實體。,非ID依賴弱實體,14,PPT學習交流,ID依賴弱實體的標識符應該含有它所依賴實體的標識符,因此需要將被依賴實體的標識符放入ID依賴弱實體轉換生成的表中,和ID依賴弱實體的標識符共同轉換成復合主鍵。,ID依賴弱實體,15,PPT學習交流,五、實體關系的轉換表示,1:1實體關系的轉換,我們可以有兩種轉換方案,一種是將學生表的主鍵“學號”放入助研金賬號表中做外鍵;另一種是將助研金賬號表的主鍵“賬號”放入學生表中做外鍵。這兩種方案均是可行的,由設計者根據(jù)應用情況自主做出選擇。,16,PPT學習交流,17,PPT學習交流,1:N實體關系的轉換,1:N實體關系的轉換方法很簡單,兩個實體分別轉換為表,然后將父實體表的主鍵放入子實體表中做外鍵。將圖5-9所示的實體關系轉換為表參照約束,18,PPT學習交流,19,PPT學習交流,M:N實體關系的轉換,N:M實體關系不能像1:1和1:N實體關系那樣直接轉換。將任一個實體表的主鍵放置到另一個實體表中做外鍵都是無法實現(xiàn)的。,20,PPT學習交流,必須要重新產(chǎn)生一張新表,用于表示兩個實體之間的關系。新表的名稱通常有兩種命名方法,一種是以N:M關系的名稱命名,一種是用下劃線連接N:M關系兩側的實體名稱作為新表的名稱。,21,PPT學習交流,實體繼承關系的轉換,當實體繼承關系轉換到物理數(shù)據(jù)模型時,首先父實體和子實體都各自轉換為表,其屬性均轉換為表的列。,在處理繼承關系轉換時,將父表中的主鍵放置到子表中,既做主鍵又做外鍵。,22,PPT學習交流,23,PPT學習交流,實體遞歸關系的轉換,對于1:N的實體遞歸關系轉換,首先將遞歸實體轉換為表,其屬性轉換為列,標識符轉換為主鍵,這些處理方式和前面描述的兩個實體間的轉換時一致的。實體遞歸關系處理的特殊性在于關系連接的是同一個實體,我們可以理解為要在同一個表對象間去實現(xiàn)這種關系。因此,在邏輯上將顧客表看做兩張表,按照前面闡述的1:N實體關系處理方法,將1側表的主鍵放入N側表中做外鍵。,24,PPT學習交流,25,PPT學習交流,對于M:N的實體遞歸關系,是指在同一個實體間所發(fā)生的多對多關系。例如,“醫(yī)生”實體間的M:N實體遞歸關系,26,PPT學習交流,每個醫(yī)生都可能會給其他醫(yī)生看病,自己也可能接受其他醫(yī)生的治療,這是一個多對多的實體遞歸關系。按照前面對N:M實體關系的轉換處理,將關系兩側的實體分別轉換為表,還要派生出一個新的關聯(lián)表,其表名是關系的名稱。,27,PPT學習交流,5.2數(shù)據(jù)庫表規(guī)范化設計,數(shù)據(jù)庫表規(guī)范化設計是指在數(shù)據(jù)庫中減少數(shù)據(jù)冗余和定義一個規(guī)范的表間結構,實現(xiàn)數(shù)據(jù)完整性與一致性。所謂數(shù)據(jù)冗余是指一組數(shù)據(jù)重復出現(xiàn)在數(shù)據(jù)庫的多個表中。在數(shù)據(jù)庫設計中,盡量避免表間的重復數(shù)據(jù)列。規(guī)范化數(shù)據(jù)庫設計為數(shù)據(jù)庫系統(tǒng)帶來如下益處:冗余數(shù)據(jù)被消除,同一數(shù)據(jù)在數(shù)據(jù)庫中僅保存一份,有效降低維護數(shù)據(jù)一致性的工作量。設計合理的表間依賴關系和約束關系,便于實現(xiàn)數(shù)據(jù)完整性和一致性。設計合理的數(shù)據(jù)庫結構,便于系統(tǒng)對數(shù)據(jù)高效訪問處理。,28,PPT學習交流,一、函數(shù)依賴理論,函數(shù)依賴(FunctionalDependency)是數(shù)據(jù)依賴的一種,它反映屬性或?qū)傩越M之間相互依存、互相制約的關系,即反映現(xiàn)實世界的數(shù)據(jù)約束關系,在函數(shù)依賴理論中,定義下列符號:R表示一個關系的模式,U=A1,A2,An是R的所有屬性的集合,F(xiàn)是R中函數(shù)依賴的集合,r是R所取的值,tX表示元組t在屬性X上的取值。,29,PPT學習交流,函數(shù)依賴的定義,定義:設有一關系模式R(U),X和Y為其屬性U的子集,即,。設t,s是關系R中的任意兩個元組,如果tX=sX,則tY=sY。那么稱Y函數(shù)依賴于X,或X函數(shù)決定Y。也可稱在關系模式R(U)上成立。,一個函數(shù)依賴要能成立,不但要求關系的當前值都能滿足函數(shù)依賴條件,而且還要求關系的任一可能值都能滿足函數(shù)依賴條件。對于當前關系r的任意兩個元組,如果X值相同,則要求Y值也相同。即有一個X值就有一個Y值與之對應?;蛘哒f,Y值由X值決定,因而這種依賴稱為函數(shù)依賴。,30,PPT學習交流,31,PPT學習交流,部分函數(shù)依賴,32,PPT學習交流,屬性傳遞依賴,33,PPT學習交流,多值依賴,34,PPT學習交流,二、規(guī)范化范式,范式(NormalForma,NF)是指關系表的規(guī)范程度狀態(tài)。范式的種類與數(shù)據(jù)依賴有著直接的聯(lián)系。在關系模式中存在函數(shù)依賴時就有可能存在數(shù)據(jù)冗余,引出數(shù)據(jù)操作異?,F(xiàn)象。數(shù)據(jù)冗余不僅浪費存儲空間,而且會使數(shù)據(jù)庫難以保持數(shù)據(jù)的一致性。范式可以用于確保數(shù)據(jù)庫模式中沒有各種類型的異常和不一致性。,35,PPT學習交流,規(guī)范化是把一組有異常的關系分解成更小的、結構良好的關系的過程,使得這些關系有最小的冗余或沒有冗余。規(guī)范化是決定關系中屬性如何分組的一個形式化過程。,理論上講,關系數(shù)據(jù)庫有六種范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF)。滿足最低要求的范式是第一范式(1NF)。在第一范式的基礎上進一步滿足更多要求的稱為第二范式(2NF),其余范式以次類推。高級范式總是包含了低級范式的全部要求。,36,PPT學習交流,第1規(guī)范式(1NF):如果關系中的屬性不可再細分,該關系滿足第1范式。,第2規(guī)范式(2NF):如果關系滿足第1范式,并消除了關系中的屬性部分依賴,該關系滿足第2范式。,例有一個關系(A,B,N,O,P),其復合主鍵為(A,B),那么N,O,P這三個非鍵屬性都不存在只依賴A或只依賴B情況,則該關系滿足第2范式,反之,不滿足第2范式。,37,PPT學習交流,第3規(guī)范式(3NF):如果關系滿足第2范式,并切斷了關系中的屬性傳遞依賴,該關系滿足第3范式。,例若有一個關系(A,N,O,P),主鍵為(A),那么非鍵屬性N,O或P都不能由單個的N,O或P或它們的組合所確定。該關系滿足第3范式。,BCNF范式:在關系中,所有函數(shù)依賴的決定因子都是候選鍵,該關系滿足BCNF范式。,例:關系STUDENT(StudentNum,Name,Email)中,決定因子StudentNum也是候選鍵,該關系滿足BCNF范式。,38,PPT學習交流,第4規(guī)范式(4NF):如果關系滿足BCNF范式,并消除了多值依賴,該關系滿足第4范式。,多值依賴:假設關系模式為R(A,B,C),其中A,B為主鍵屬性。如果在A取特定值,而在B上取值的集合與在C上取值的集合無關,則稱多值依賴。,39,PPT學習交流,例:設學校中某一門課程由多個教師講授,他們使用相同的一套參考書。用關系模式Teaching(Course,Teacher,Book)來表示課程、教師和參考書之間的關系。,該關系Teaching(Course,Teacher,Book),屬于BCNF范式;但是它存在以下問題:,1.數(shù)據(jù)冗余度大,有多少名任課教師,課程名、參考書名就要存儲多少次;,2.增加操作復雜,當某一課程增加一名任課教師時,該課程有多少本參考書,就必須插入多少個元組;,3.修改操作復雜,某一門課程要修改一門參考書,該課程有多少名教師,就必須修改多少個元組。,40,PPT學習交流,產(chǎn)生這些問題的原因是參考書和教師的取值彼此獨立,它們都只取決于課程名,也就是存在多值依賴。,41,PPT學習交流,練習:學生關系規(guī)范化,問題:它滿足第1范式?,42,PPT學習交流,第1規(guī)范式:如果關系中的屬性不可再細分,該關系滿足第1范式。,學生關系現(xiàn)在滿足第1范式,本關系不滿足1范式,因為“聯(lián)系方式”屬性可以再細分“電話”、“電子郵件”等。,問題:它滿足第2范式嗎?,43,PPT學習交流,第2規(guī)范式:如果關系滿足第1范式,并消除了關系中的屬性部分依賴,該關系滿足第2范式。,分析:主鍵(學號,課程號)(學號)系名(學號)住址存在部分依賴,不滿足第2范式處理辦法:對學生關系進行分解,44,PPT學習交流,“學生”關系和“課程成績”關系均滿足第2范式,問題:它滿足第3范式嗎?,45,PPT學習交流,第3規(guī)范式:如果關系滿足第2范式,并切斷了關系中的屬性傳遞依賴,該關系滿足第3范式。,分析:(學號)系名,(系名)住址,故(學號)住址。存在傳遞依賴,不滿足第3范式.處理辦法:對學生關系再進行分解,46,PPT學習交流,“學生”、“系信息”、“課程成績”關系均滿足第3范式,問題:它滿足BCNF范式嗎?,47,PPT學習交流,“學生”、“系信息”、“課程成績”關系均滿足BCNF范式,問題:它滿足第4范式嗎?,BCNF范式:在關系中,所有函數(shù)依賴決定因子都是主鍵,該關系滿足BCNF范式。,48,PPT學習交流,分析:(系編號)辦公電話,(系編號)學生住址,而系辦公電話與學生住址不相關、學生住址可能有多處,故存在多值依賴,不滿足第4范式處理辦法:對“系信息”關系進行分解,第4規(guī)范式:如果關系滿足BCNF范式,并消除了多值依賴,該關系滿足第4范式。,49,PPT學習交流,各關系均滿足第4范式,50,PPT學習交流,三、反規(guī)范化處理,規(guī)范化減少了數(shù)據(jù)冗余,易于保證數(shù)據(jù)的完整性,但規(guī)范化也會導致數(shù)據(jù)庫性能降低,因此,在利用規(guī)范化設計數(shù)據(jù)庫時要平衡兩者的關系。,規(guī)范化帶來結構的完整和精確性,但同時也可能帶來負面的效果。也正是基于此,人們提出了反規(guī)范化設計的基本思想。,51,PPT學習交流,所謂的反規(guī)范化,就是適當降低甚至拋棄范式約束,不再要求一個表只表述其表自身,而是適當冗余性添加帶有某種依賴關系的數(shù)據(jù)。,反規(guī)范化處理的主要手段有如下2種:(1)增加冗余列或派生列如果應用系統(tǒng)的常用操作需要關聯(lián)其他表中的數(shù)據(jù),則在進行表設計時,應直接將該列融入當前表中,使其冗余存在,稱為冗余列。(2)表的合并和分割,52,PPT學習交流,執(zhí)行反規(guī)范化設計,表的數(shù)量往往也就會減少,而這也就降低了表連接運算的壓力,可以有力提升性能。,但反規(guī)范化的使用也會帶來以下問題:(1)數(shù)據(jù)冗余的存在(2)降低了數(shù)據(jù)庫的完整性,反規(guī)范化是把雙刃劍,并不具有普遍意義,需要就事論事,用不好會傷及自身,53,PPT學習交流,5.3PowerDesigner項目實踐,在第四章中我們設計并完成了圖書館管理系統(tǒng)概念模型設計,最終得到如下的概念數(shù)據(jù)模型設計圖,54,PPT學習交流,一、CDM到LDM轉換設計,在PowerDesigner建模工具中,點取
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 村委代簽補償協(xié)議書范本
- 文化創(chuàng)意產(chǎn)業(yè)基地空地租賃與項目合作開發(fā)協(xié)議
- 申請商標簽協(xié)議書范本
- 充電樁充電服務及能源供應合同
- 精細化倉儲配送與供應鏈管理合同
- 茶園土地租賃與茶葉種植技術輸出合同
- 知名快餐品牌區(qū)域代理權及店鋪轉讓合同范本
- 產(chǎn)科醫(yī)院護士標準聘用合同及母嬰護理
- 餐飲品牌股權投資與轉讓合同
- 企業(yè)常年財務顧問與風險控制協(xié)議
- 反分裂班會課件
- 職業(yè)技術學院衛(wèi)生信息管理專業(yè)人才培養(yǎng)方案
- 中建八局如何做好轉型升級下的技術標編制工作
- 西南大學馬原試題及答案
- 2025年電大??菩姓芾砉芾韺W基礎試題及答案
- 2024中國中信金融資產(chǎn)管理股份有限公司北京市分公司招聘筆試參考題庫附帶答案詳解
- 浙江省溫州市甌海區(qū)實驗小學教育集團2025年小升初必考題數(shù)學檢測卷含解析
- 2025年上半年四川省眉山青神縣青神縣事業(yè)單位考試招聘50人重點基礎提升(共500題)附帶答案詳解
- 山東省第三屆國學小名士題庫(1600題含答案)
- 內(nèi)鏡室管理制度
- 消防泵房安全管理制度及操作規(guī)程
評論
0/150
提交評論