




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)庫及數(shù)據(jù)倉庫精要終極目標:Ad-hoc報表系統(tǒng)Ad-hoc釋義:即時的、隨意的、特殊的數(shù)據(jù)庫及數(shù)據(jù)倉庫精要終極目標:Ad-hoc報表系統(tǒng)Ad-ho前言數(shù)據(jù)庫扮演的角色也叫聯(lián)機事務處理OLAP(OnlineTransactionalProcessing),數(shù)據(jù)庫保存由日常管理過程中涉及的業(yè)務操作創(chuàng)建的操作型結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)記錄系統(tǒng)管理行為(通過各種業(yè)務邏輯來交互)。反映細粒度的事務數(shù)據(jù),保存時間短。主要依賴關(guān)系模式建模方法論。數(shù)據(jù)倉庫扮演的角色也叫聯(lián)機分析處理OLAP(OnlineAnalyticalProcessing),數(shù)據(jù)由聯(lián)機事務處理來,經(jīng)過選擇和聚集,變?yōu)榻y(tǒng)計分析事實產(chǎn)生的因果,輔助決策制定(通過各種統(tǒng)計分析報表來交互)。反映大范圍的事實數(shù)據(jù)(業(yè)務事件的累積),保存時間長。主要依賴多維模式建模方法論主題、事實和事件(請注意語義)
事實是一個主題,比如:銷售、配送、住院、手術(shù)等。一個主題對應了多個相互關(guān)聯(lián)的關(guān)系模式,也可以叫做相關(guān)關(guān)系表。事實的實例對應著發(fā)生的事件,比如:一個執(zhí)行的銷售、配送、住院、手術(shù)等都是一個事件。每個事實由一組提供了事件的量化描述的度量的屬性值描述,比如:銷售收入、配送量、住院支出、手術(shù)時間等通過語義將數(shù)據(jù)庫和數(shù)據(jù)倉庫結(jié)合在一起前言數(shù)據(jù)庫扮演的角色從報表到報表存在的問題及對策綱領(lǐng)對策綱領(lǐng)實體(關(guān)系所代表的實體)原子化,是指實體本身不能再分解屬性原子化,是指實體的屬性(值域所代表的屬性)本身不能再分解主鍵原子化,是指實體的主鍵本身是一個唯一的ID字段聯(lián)系原子化,是指實體間的聯(lián)系(關(guān)系所代表的聯(lián)系)都是一對多的聯(lián)系命題原子化,是指語義角度的聯(lián)系原子化現(xiàn)實(面對單一主題,數(shù)據(jù)規(guī)模極小,僅是面對招投標業(yè)務追蹤)1)第二個表是從第一個表通過高級程序員編寫VBA程序?qū)崿F(xiàn),第一個表也是專業(yè)定崗員工通過Excel專用表單維護和更新的,背后其實還是高級程序員的工作價值體現(xiàn)2)信息化崗位需求及配置:高級程序員四名,六個專業(yè)業(yè)務人員。滿負荷工作以應對數(shù)據(jù)變動和操作功能變動解決方案:報表列表化,去除冗余數(shù)據(jù),建模信息化模型(數(shù)據(jù)庫模型)并影射和實現(xiàn)為Access桌面數(shù)據(jù)庫應用從報表到報表存在的問題及對策綱領(lǐng)對策綱領(lǐng)現(xiàn)實(面對單一主題,問題的導入-從Excel表格出發(fā)引出的問題結(jié)構(gòu)良好的表,范式,SQL語言,關(guān)系模式及E-R圖基本表與中間表、臨時表不同,基本表及其字段之間的關(guān)系,應盡量滿足第三范式,是結(jié)構(gòu)良好的表,它可以消除刪除行,改變行,修改行(實例)的錯誤和異常。它具有如下四個特性:(1)原子性,基本表中的字段是不可再分解的。(2)原始性,基本表中的記錄是原始數(shù)據(jù)(基礎(chǔ)數(shù)據(jù))的記錄。(3)演繹性,由基本表與代碼表中的數(shù)據(jù),可以派生出所有的輸出數(shù)據(jù)。(4)穩(wěn)定性,基本表的結(jié)構(gòu)是相對穩(wěn)定的,表中的記錄是要長期保存的。(5)基本表的每個決定因子都必須是候選建。(6)非基本表必須分解為兩個或多個基本表。三個基本范式:(1)1NF是對屬性的原子性約束,要求屬性具有原子性,不可再分解。(2)2NF是對記錄的惟一性約束,要求記錄有惟一標識,即實體的惟一性。(3)3NF是對字段冗余性的約束,即任何字段不能由其他字段派生出來,它要求字段沒有冗余大多數(shù)結(jié)構(gòu)不良好的表,會產(chǎn)生或包含大量的冗余數(shù)據(jù),同時可能會出現(xiàn)刪除行,改變行,修改行的錯誤和異常,這都是都是使用了SQLDMLCURD語句產(chǎn)生的。像中間表、報表和臨時表:(1)
中間表是存放統(tǒng)計分析數(shù)據(jù)的表,它是為數(shù)據(jù)倉庫、輸出報表或查詢結(jié)果而設(shè)計的,有時它沒有主鍵與外鍵(數(shù)據(jù)倉庫除外)。(2)
臨時表是程序員個人設(shè)計的,存放臨時記錄,為個人所用。(3)
基表和中間表由DBA維護,臨時表由程序員自己用程序自動維護。關(guān)系是一個由行和列組成的二維表,不一定結(jié)構(gòu)良好,特征為:行包括實體的數(shù)據(jù),列包含實體性質(zhì)的數(shù)據(jù),表中的單元格存儲單個值,每列的所有實體類型一致,每列具有唯一名稱,列的順序任意,行的順序任意,任意兩行互不重復。這是最大的復合關(guān)系模式的條件,符合這個要求的表就是關(guān)系型表格。通過E-R圖將這些概念反映出來,通過名詞性和動詞性,完全可以描述客觀世界,其中名詞性描述實體,動詞性描述聯(lián)系或動作影響,通過動詞性將不同的實體關(guān)聯(lián)在一起第一目標或者叫基礎(chǔ)目標:統(tǒng)計,匯總及分析報表的工作盡量地自動用Excel或Spreadsheet做,幾乎不需人為干預問題的導入-從Excel表格出發(fā)引出的問題結(jié)構(gòu)良好的表,范式目錄E-R模型的概念與表示實體-聯(lián)系方法(概念模型及設(shè)計,關(guān)注現(xiàn)實世界)關(guān)系模式的規(guī)范化(消除數(shù)據(jù)冗余,避免操作異常)E-R圖向關(guān)系表(Schema)的轉(zhuǎn)換(邏輯模型及設(shè)計,關(guān)注信息世界)多維模式與統(tǒng)計分析的關(guān)系Excel或Spreadsheet在統(tǒng)計分析中的角色統(tǒng)計分析系統(tǒng)(多維模式建構(gòu))的演進終極目標:Ad-hoc報表系統(tǒng)目錄E-R模型的概念與表示關(guān)于現(xiàn)實世界事實及描述的定義事實包括以下四個方面:
第一:事實是指“某物具有某種性質(zhì)或某些事物具有某種關(guān)系?!?/p>
與原子命題、分子命題的分類相對應,事實可以分為原子事實、分子事實。其中,原子事實是最基本、最簡單的事實,從中不能再析出其它事實;分子事實是原子事實的復合
第二:事實具有客觀性。“大多數(shù)的事實的存在都不依靠我們的意愿;這就是為什么我們把它們叫作‘嚴峻的’、‘不肯遷就的’或‘不可抗拒’的理由。大部分物理事實的存在不僅不依靠我們的意愿,而且也不依靠我們的存在”
第三:現(xiàn)實世界由各種各樣的事實組合而成,事實屬于現(xiàn)實世界
第四:事實決定命題的真?zhèn)?,“事實是使得命題為真或為假的東西”。具體說來,原子命題的真假取決于它是否與原子事實相符合,分子命題的真假取決于組成它的原子命題的真假現(xiàn)實世界的語義描述的存在第一:原子命題第二:分子命題第三:段落(由多個邏輯緊密相關(guān)的分子命題構(gòu)成)第四:主題(由多個邏輯緊密相關(guān)的段落構(gòu)成)關(guān)于現(xiàn)實世界事實及描述的定義事實包括以下四個方面:E-R模型的概念與表示E-R圖也稱實體-聯(lián)系圖(EntityRelationshipDiagram),提供了表示實體類型、實體屬性和相關(guān)實體之間聯(lián)系(三個要素)的方法,用來描述現(xiàn)實世界的概念模型關(guān)系數(shù)據(jù)庫使用實體-聯(lián)系模型(E-R模型)進行數(shù)據(jù)庫設(shè)計,以構(gòu)造信息世界的邏輯模型。E-R數(shù)據(jù)庫設(shè)計工具提供了一個“方框與箭頭”的繪圖工具,幫助數(shù)據(jù)庫用戶建立E-R圖來描繪數(shù)據(jù),邏輯及現(xiàn)實世界E-R圖可以手繪,亦可以借用Case工具(PowerDesigner,Visio或SQL
Power
Architect)做出考察單獨的一個聯(lián)系(動詞類型的語義連接及構(gòu)造能力),聯(lián)系及相互關(guān)聯(lián)的實體形成的一個描述,構(gòu)造了一個最基本的原子命題E-R模型的概念與表示E-R圖也稱實體-聯(lián)系圖(EntityE-R模型的概念與表示實體集-語義(名詞類性)實體(Entity)事物就是在行動影響下物質(zhì)本身的改變,或者進行??陀^存在并可相互區(qū)別的事物稱為實體。實體可以是具體的,也可以是抽象的概念或聯(lián)系。具有共性的一類實體可歸類為一個實體集(Entityset)。屬性(Attribute)實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。域(Domain)屬性的取值范圍或類型。鍵或標識符(Key)標識符是實體中一個或多個屬性的集合,可用來唯一標識實體中的一個實例。每個實體都必須至少有一個標識符。如果實體只有一個標識符,則它為實體的主標識符。如果實體有多個標識符,則其中一個被指定為主標識符,其余的標識符就是次標識符(候選標識符)E-R模型的概念與表示實體集-語義(名詞類性)E-R模型的概念與表示聯(lián)系集-語義(動詞類型)實體之間可以通過聯(lián)系來相互關(guān)聯(lián)。與實體和實體集對應,聯(lián)系也可以分為聯(lián)系和聯(lián)系集,聯(lián)系集是實體集之間的聯(lián)系,聯(lián)系是實體之間的聯(lián)系,聯(lián)系是具有方向性的。聯(lián)系具有方向性,每個方向上都有一個基數(shù)。聯(lián)系的兩個方向上各自包含有一角色名,描述該方向聯(lián)系的作用。按照實體類型中實例之間的數(shù)量對應關(guān)系,通??蓪⒙?lián)系分為4個基本聯(lián)系分為類,即一對一(ONE
TOONE)聯(lián)系、一對多(ONETOMANY)聯(lián)系、多對一(MANYTOONE)聯(lián)系和多對多聯(lián)系(MANYTOMANY)。三個特殊聯(lián)系每個實體類型都有自己的標識符,如果兩個實體集之間發(fā)生聯(lián)系,其中一個實體類型的標識符進入另一個實體類型并與該實體類型中的標識符共同組成其標識符時,這種聯(lián)系則稱為標定聯(lián)系,也叫依賴聯(lián)系。反之稱為非標定聯(lián)系,也叫非依賴聯(lián)系。遞歸聯(lián)系是實體集內(nèi)部實例之間的一種聯(lián)系,通常形象地稱為自反聯(lián)系。同一實體類型中不同實體集之間的聯(lián)系也稱為遞歸聯(lián)系。E-R模型的概念與表示聯(lián)系集-語義(動詞類型)E-R模型的概念與表示(使用Case工具時的圖符及事例)E-R模型的概念與表示(使用Case工具時的圖符及事例)E-R模型的概念與表示E-R圖的設(shè)計步驟
第一步:針對特定的應用,確定實體、屬性和實體間的聯(lián)系,畫出局部E-R圖。第二步:綜合各個局部E-R圖,產(chǎn)生反映數(shù)據(jù)庫整體概念的總體E-R圖。E-R模型的概念與表示E-R圖的設(shè)計步驟E-R模型的概念與表示(手繪草圖事例)弱實體集有些實體集的所有屬性都不足以形成主碼,這樣的實體集稱為弱實體集(WeakEntitySet),依賴于其它實體集而存在。與此相對,其屬性可以形成主碼的實體集稱為強實體集。弱實體集所依賴的實體集稱為標識實體集(identifyingentityset),相應的關(guān)系為標識聯(lián)系(identifyingrelationship)。OrderItemdatestatuspaymentorder#item#tagIncludeE-R模型的概念與表示(手繪草圖事例)弱實體集OrderItE-R模型的概念與表示弱實體集通常沒有主鍵。以訂單的分項為例,訂單項實體集可能有編號(局部的編號)、商品名稱、數(shù)量、單價等屬性,但是這些屬性不足以識別一個定單項,因為完全有可能在另外一張訂單中出現(xiàn)相同的內(nèi)容。必須把訂單的關(guān)鍵字(如一個全局的訂單編號)和定單項的局部編號結(jié)合起來才能標示一個定單項。弱實體集的屬性中,用來與標識實體集的鍵結(jié)合以識別一個弱實體集的屬性稱為部分鍵(partialkey)。弱實體集的主鍵=它的標識實體集的鍵+它的部分鍵E-R模型的概念與表示弱實體集通常沒有主鍵。E-R模型的概念與表示(手繪草圖事例)E-R圖使用雙線矩形表示弱實體集,弱實體集與其標識實體集之間的聯(lián)系用雙線菱形表示,弱實體集的部分鍵使用虛下劃線表示。OrderItemdatestatuspaymentorder#item#tagIncludeE-R模型的概念與表示(手繪草圖事例)E-R圖使用雙線矩形表E-R模型的概念與表示實體集的層次關(guān)系現(xiàn)實世界中的很多概念之間都具體層次關(guān)系。E-R模型使用實體集間的繼承和ISA關(guān)系來描述這種概念間的層次關(guān)系實體集老師或?qū)W生都繼承自實體集人,并且實體集老師或?qū)W生與實體集人之間都滿足ISA關(guān)系,即老師或?qū)W生都是人的一種。ISA關(guān)系可以從兩個方向進行設(shè)計從自上而下的方向,首先設(shè)計出人這一實體,然后根據(jù)屬性的不同,將兩種不同的人具體化(specification)為老師或者學生。從自下而上的方向,首先設(shè)計出老師或?qū)W生,然后將他們的共性提取出來,泛化(generalization)為人。E-R模型的概念與表示實體集的層次關(guān)系E-R模型的概念與表示層次關(guān)系的約束從子實體集之間是否相交角度,不相交(disjoin)泛化要求繼承自同一父輩的多個子實體集之沒有交集,重疊(overlapping)泛化則允許有交集。從泛化是否完全角度,全參與泛化要求所有父輩實體都必須同時也是某一子輩實體,部分泛化則允許不是任何子輩實體的父輩實體存在。例如,在采用會員制的銷售系統(tǒng)中,顧客被分為會員(VIP)與非會員(NONVIP)兩種,會員擁有消費積分(credit),非會員擁有固定的折扣率(discount)。一個顧客要么是會員、要么是非會員,二者必取其一,因此為全參與不相交。E-R模型的概念與表示層次關(guān)系的約束E-R模型的概念與表示(手繪草圖事例)CustomerISAVIPNONVIPcreditdiscountdisjoincustomer#namegenderbirthdaycityaddressemailE-R模型的概念與表示(手繪草圖事例)CustomerISAE-R圖符(手繪草圖事例)E-R圖符(手繪草圖事例)實體-聯(lián)系方法實體還是屬性凡是滿足以下兩條準則的事物,一般均可作為屬性對待。作為屬性,不能再具有需要描述的性質(zhì)。屬性必須是不可分的數(shù)據(jù)項,不能包含其他屬性。屬性不能與其他實體具有聯(lián)系,即E-R圖中所表示的聯(lián)系是實體之間的聯(lián)系。例如書籍是一個實體,書號、書名、作者、出版社、定價是書籍的屬性,如果應用系統(tǒng)不再需要作者的其他信息,如電話、住址、個人主頁等,那么根據(jù)原則1可以將作者作為書籍的屬性對待。但是如果這些信息是必須的,那么作者作為一個實體看待更為恰當。實體-聯(lián)系方法實體還是屬性實體-聯(lián)系方法(手繪草圖事例)bookisbntitlepricepresswritten_bynameauthorauthorcityserialbookisbntitlepricepressauthor實體-聯(lián)系方法(手繪草圖事例)bookisbntitlep實體-聯(lián)系方法實體還是聯(lián)系一般來說,實體對應現(xiàn)實世界中實際存在的事物,是名詞類型;聯(lián)系對應的概念一般是一種動作,是動詞類型。例如:書和作者都是現(xiàn)實世界中的名詞,因此作為實體。而written_by表示作者寫書這一動作,因此作為聯(lián)系。映射基數(shù)往往影響到一個概念是作為實體還是聯(lián)系的選擇。若一項貸款只能由一個分行發(fā)放,并且只能由一個客戶借貸,則將Loan作為Customer與Branch之間的聯(lián)系比較合適。但如果允許多個客戶共同借貸同一項貸款,在這種情況下,將Loan作為實體。實體-聯(lián)系方法實體還是聯(lián)系實體-聯(lián)系方法(手繪草圖事例)二元關(guān)系還是多元關(guān)系數(shù)據(jù)庫中使用得最多的是二元聯(lián)系。通常,將多元關(guān)系轉(zhuǎn)換為二元關(guān)系。如學校選課系統(tǒng),涉及到學生、教室、教師、課程等多個實體,可表示為一個四元關(guān)系。
學生上課教室教師課程學生選課課程授課教師地點教室實體-聯(lián)系方法(手繪草圖事例)二元關(guān)系還是多元關(guān)系學生上課教實體-聯(lián)系方法(手繪草圖事例)但也有一些情況下使用多元聯(lián)系更好(如需要表達多個實體集間的約束時)如學校選課系統(tǒng)中若一門課程可由多個教師教授,并且若課程和教師確定,則上課的地點也隨之確定。實體-聯(lián)系方法(手繪草圖事例)但也有一些情況下使用多元聯(lián)系更實體-聯(lián)系方法(手繪草圖事例)聯(lián)系屬性的放置影響聯(lián)系屬性放置的主要因素是聯(lián)系的映射基數(shù)。對于一對一或一對多聯(lián)系,選擇作為聯(lián)系屬性或?qū)嶓w屬性只是體現(xiàn)語義側(cè)重點的不同如銷售系統(tǒng)需要記錄顧客(Customer)與訂單(Order)之間的關(guān)系(Possess)。由于一個訂單只能由一個顧客所有,因此為顧客與訂單之間為一對多關(guān)系。這時,記錄生成訂單日期的屬性(date)既可以作為聯(lián)系Possess的屬性,也可作為訂單的屬性。
OrderdatestatuspaymentorderPossesCustomer實體-聯(lián)系方法(手繪草圖事例)聯(lián)系屬性的放置Orderdat實體-聯(lián)系方法(手繪草圖事例)對于多對多聯(lián)系,聯(lián)系的屬性不能作為實體的屬性。如,顧客與希望書籍之間的聯(lián)系希望購買(Wish_for)。Wish_for有一屬性date,表示顧客發(fā)出購買意向的日期,這一屬性不能作為參與聯(lián)系的兩個實體Customer或Book的屬性。BookWish_forCustomerdate實體-聯(lián)系方法(手繪草圖事例)對于多對多聯(lián)系,聯(lián)系的屬性不能實例——在線書店數(shù)據(jù)庫類似于Amazon的在線書店系統(tǒng)所用的數(shù)據(jù)庫數(shù)據(jù)庫中要求存儲所有書籍的相關(guān)信息,并對書加以分類;顧客的有關(guān)信息也要求存儲在數(shù)據(jù)庫中,并且允許用戶選擇自己感興趣的書籍類別及希望購買的圖書;顧客在決定購買時可以發(fā)出訂單,同一訂單可以包含多種書,每種書可一次購買多本。顧客在訂單中提供送貨地址,系統(tǒng)根據(jù)訂單發(fā)貨。實例——在線書店數(shù)據(jù)庫類似于Amazon的在線書店系統(tǒng)所用的實例——在線書店數(shù)據(jù)庫E-R圖(手繪草圖事例)實例——在線書店數(shù)據(jù)庫E-R圖(手繪草圖事例)實例——在線書店數(shù)據(jù)庫合并分E-R圖各分E-R圖之間的沖突主要有三類:屬性沖突
(1)屬性域沖突,即屬性值的類型、取值范圍或取值集合不同。
例如:屬性“訂單號”有的定義為字符型,有的為數(shù)值型。
(2)屬性取值單位沖突。
例如:屬性“庫存”有的以冊為單位,有的以千冊為單位。
命名沖突
(1)
同名異義。不同意義對象相同名稱。
例如:Author和Customer均有屬性name。
(2)
異名同義(一義多名)。同意義對象不相同名稱。
例如:“項目”和“課題”。
實例——在線書店數(shù)據(jù)庫合并分E-R圖實例——在線書店數(shù)據(jù)庫結(jié)構(gòu)沖突
(1)
同一對象在不同應用中具有不同的抽象。
例如:“作者”在某一局部應用中被當作實體,而在另一局部應用中則被當作屬性。
(2)
同一實體在不同局部視圖中所包含的屬性不完全相同,或者屬性的排列次序不完全相同。
(3)
實體之間的聯(lián)系在不同局部視圖中呈現(xiàn)不同的類型。
例如:實體E1與E2在局部應用A中是多對多聯(lián)系,而在局部應用B中是一對多聯(lián)系;又如在局部應用X中E1與E2發(fā)生聯(lián)系,而在局部應用Y中E1、E2、E3三者之間有聯(lián)系。
解決方法是根據(jù)應用的語義對實體聯(lián)系的類型進行綜合或調(diào)整。
實例——在線書店數(shù)據(jù)庫結(jié)構(gòu)沖突
(1)
同一對關(guān)系模式設(shè)計范式(范式,數(shù)據(jù)庫設(shè)計范式,數(shù)據(jù)庫關(guān)系表的設(shè)計范式)是符合某一種級別的關(guān)系模式的集合。構(gòu)造數(shù)據(jù)庫必須遵循一定的規(guī)則。在關(guān)系數(shù)據(jù)庫中,這種規(guī)則或者叫約束就是范式。關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求,即滿足不同的范式第一范式(1NF):在任何一個關(guān)系數(shù)據(jù)庫中,第一范式(1NF)是對關(guān)系模式的基本要求,不滿足第一范式(1NF)的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫。所謂第一范式(1NF)是指數(shù)據(jù)庫表的每一列都是不可分割的基本數(shù)據(jù)項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復的屬性。如果出現(xiàn),就可能需要定義一個新的實體,新實體與原實體之間為一對多關(guān)系第二范式(2NF):數(shù)據(jù)庫表中不存在非關(guān)鍵字段對任一候選關(guān)鍵字段的部分函數(shù)依賴(部分函數(shù)依賴指的是存在組合關(guān)鍵字中的某些字段決定非關(guān)鍵字段的情況),也即所有非關(guān)鍵字段都完全依賴于任意一組候選關(guān)鍵字。如果存在,那么這個屬性和主關(guān)鍵字的這一部分應該分離出來形成一個新的實體,新實體與原實體之間是一對多的關(guān)系第三范式(3NF):要求一個數(shù)據(jù)庫表中不包含已在其它表中已包含的非主關(guān)鍵字信息。例如,存在一個部門信息表,其中每個部門有部門編號(dept_id)、部門名稱、部門簡介等信息。那么在員工信息表中列出部門編號后就不能再將部門名稱、部門簡介等與部門有關(guān)的信息再加入員工信息表中。如果不存在部門信息表,則根據(jù)第三范式(3NF)也應該構(gòu)建它,否則就會有大量的數(shù)據(jù)冗余。如果存在,應該分離這一部分出來形成一個新的實體,新實體與原實體之間是一對多的關(guān)系關(guān)鍵要理解定義這種范式標準的主要目的是為了減少數(shù)據(jù)冗余,數(shù)據(jù)冗余產(chǎn)生的本質(zhì)就是在一個表中存在字段與字段之間的一對多,或者多對多關(guān)系。滿足這些規(guī)范的數(shù)據(jù)庫是簡潔的、結(jié)構(gòu)明晰的,同時,也不會發(fā)生插入(insert)、刪除(delete)和更新(update)操作異常。反之則是亂七八糟,不僅給數(shù)據(jù)庫的編程人員制造麻煩,而且面目可憎,可能存儲了大量不需要的冗余信息。解決這個幾對幾的關(guān)系問題,就能輕易實現(xiàn)滿足第三范式的數(shù)據(jù)庫設(shè)計思考題:假定選課關(guān)系表為SelectCourse(學號,姓名,年齡,課程名稱,成績,學分),關(guān)鍵字為組合關(guān)鍵字(學號,課程名稱),因為存在如下決定關(guān)系:(學號,課程名稱)→(姓名,年齡,成績,學分)
這個數(shù)據(jù)庫表不滿足第二范式,因為存在如下決定關(guān)系:(課程名稱)→(學分)
(學號)→(姓名,年齡)即存在組合關(guān)鍵字中的字段決定非關(guān)鍵字的情況。造成的潛在問題:
(1)數(shù)據(jù)冗余:同一門課程由n個學生選修,“學分”就重復n-1次;同一個學生選修了m門課程,姓名和年齡就重復了m-1次。(2)更新異常:若調(diào)整了某門課程的學分,數(shù)據(jù)表中所有行的“學分”值都要更新,否則會出現(xiàn)同一門課程學分不同的情況。(3)插入異常:假設(shè)要開設(shè)一門新的課程,暫時還沒有人選修。這樣,由于還沒有“學號”關(guān)鍵字,課程名稱和學分也無法記錄入數(shù)據(jù)庫。(4)刪除異常:假設(shè)一批學生已經(jīng)完成課程的選修,這些選修記錄就應該從數(shù)據(jù)庫表中刪除。但是,與此同時,課程名稱和學分信息也被刪除了。很顯然,這也會導致插入異常。
把選課關(guān)系表SelectCourse改為如下三個表:學生:Student(學號,姓名,年齡);課程:Course(課程名稱,學分);選課關(guān)系:SelectCourse(學號,課程名稱,成績)。這樣的數(shù)據(jù)庫表是符合第二范式的,消除了數(shù)據(jù)冗余、更新異常、插入異常和刪除異常。另外,所有單關(guān)鍵字的數(shù)據(jù)庫表都符合第二范式,因為不可能存在組合關(guān)鍵字。關(guān)系模式設(shè)計范式(范式,數(shù)據(jù)庫設(shè)計范式,數(shù)據(jù)庫關(guān)系表的設(shè)計范E-R圖向關(guān)系模式的轉(zhuǎn)換及主題數(shù)據(jù)庫通過實體—聯(lián)系方法可以方便得得到現(xiàn)實世界的一個抽象模型,但這一模型并不能為數(shù)據(jù)庫管理系統(tǒng)接受。要完成從現(xiàn)實世界到信息世界的轉(zhuǎn)化,還必須將實體—聯(lián)系方法所得的E-R圖轉(zhuǎn)化為關(guān)系表定義。注意:一定要區(qū)分語義,包括名詞性和動詞性。先是動詞性,代表聯(lián)系集,其次是名詞性,代表聯(lián)系集的動詞性所依賴、影響和作用的實體集分析并確定主題:主題數(shù)據(jù)庫是面向業(yè)務,面向事務,面向事實和事件的主題的數(shù)據(jù)組織存儲,例如,企業(yè)中需要建立的典型的主題數(shù)據(jù)庫有:產(chǎn)品、客戶、零部件、供應商、訂貨、員工、文件資料、工程規(guī)范等。其中產(chǎn)品、客戶、零部件等數(shù)據(jù)庫的結(jié)構(gòu),是對有關(guān)單證、報表的數(shù)據(jù)項進行分析整理而設(shè)計的,不是按單證、報表的原樣建立的。這些主題數(shù)據(jù)庫與企業(yè)管理中要解決的主要問題相關(guān)聯(lián),而不是與通常的計算機應用項目相關(guān)聯(lián)。一個主題數(shù)據(jù)庫的科學的數(shù)據(jù)結(jié)構(gòu):是由多個達到“基本表”(BaseTable)規(guī)范的數(shù)據(jù)實體構(gòu)成的,這些基本表具有如下的特性:
1)原子性——基本表中的數(shù)據(jù)項是數(shù)據(jù)元素(即最小的、不能再分解的信息單元);
2)演繹性——可由基本表中的數(shù)據(jù)生成全部輸出數(shù)據(jù)(即這些基本表是精練的,經(jīng)過計算或操作(自動化)處理可以產(chǎn)生全部企業(yè)管理所需要的數(shù)據(jù));
3)規(guī)范性——基本表中數(shù)據(jù)滿足三范式(3NF)要求,這是依據(jù)科學的、能滿足演繹性推算要求、并能保證快捷存取的數(shù)據(jù)結(jié)構(gòu)。E-R圖向關(guān)系模式的轉(zhuǎn)換及主題數(shù)據(jù)庫通過實體—聯(lián)系方法可以方實體的轉(zhuǎn)換將一個普通實體(非弱實體)轉(zhuǎn)換為表定義是相當直觀的,實體的每個屬性對應表中的一個字段,實體的主鍵對應表的主鍵。如Book實體轉(zhuǎn)化到表的結(jié)果為:Book(isbn#,title,price,press,stock)實體的轉(zhuǎn)換將一個普通實體(非弱實體)轉(zhuǎn)換為表定義是相當直觀聯(lián)系的轉(zhuǎn)換一個多對多聯(lián)系在轉(zhuǎn)換后也對應一個新的交叉實體表,表中的屬性包括參與聯(lián)系各實體的主鍵聯(lián)系的描述屬性參與聯(lián)系各實體的主鍵之和構(gòu)成新的交叉實體表的超鍵。如多對多聯(lián)系Written_by轉(zhuǎn)化為表之后其主鍵將由參與該聯(lián)系的兩個實體Book和Author的主鍵構(gòu)成,如下:Written_by(isbn#,author#,serial)聯(lián)系的轉(zhuǎn)換一個多對多聯(lián)系在轉(zhuǎn)換后也對應一個新的交叉實體表,表聯(lián)系的轉(zhuǎn)換一對一和一對多聯(lián)系A(chǔ)與B之間是一對多聯(lián)系,不轉(zhuǎn)換為一張單獨的表,而只在B轉(zhuǎn)換后的表中增加A的主鍵屬性(當然這些屬性將形成一個引用到A的主鍵的一個外鍵),以此表示某B實體所從屬的A實體。這種方法可以產(chǎn)生更少的表,有利于提高數(shù)據(jù)庫性能,還可以表達更多的約束如對于聯(lián)系Possess,將在Order表中增加一列customer#表示訂單從屬的顧客聯(lián)系的轉(zhuǎn)換一對一和一對多聯(lián)系弱實體的轉(zhuǎn)換由于弱實體總是全參與它與它的標識實體之間的多對一聯(lián)系,因此可以采用上面提出的一對多聯(lián)系方法進行轉(zhuǎn)換。弱實體轉(zhuǎn)換后生成的表的主鍵由標識實體的主鍵與弱實體本身的部分鍵組合而成。如弱實體Item轉(zhuǎn)換后,構(gòu)成如下:Item(order#,item#,isbn,qty)弱實體的轉(zhuǎn)換由于弱實體總是全參與它與它的標識實體之間的多對實體層次的轉(zhuǎn)換將實體層次轉(zhuǎn)換為表定義時可采用兩種方法父輩實體與子輩實體都轉(zhuǎn)換為單獨的表
通用方法,任何情況適用。每一個子輩實體轉(zhuǎn)換為單獨的表,其中既包含各子輩實體的特殊屬性,也包含子輩與父輩實體的公有屬性。
只適用全參與泛化,因無法比哦啊是不從屬于任何子輩實體的父輩實體如Customer與VIP、NONVIP之間的全參與泛化可用第二種方法轉(zhuǎn)換為:VIP(customer#,name,gender,birthday,city,address,email,credit)NONVIP(customer#,name,gender,birthday,city,address,email,
discount)實體層次的轉(zhuǎn)換將實體層次轉(zhuǎn)換為表定義時可采用兩種方法一些實際的考慮一般來說,在將E-R圖轉(zhuǎn)換到關(guān)系表定義的過程中,需要考慮兩個實際的問題:性能與數(shù)據(jù)規(guī)范化。提高數(shù)據(jù)庫性能的一個重要方法是進行數(shù)據(jù)冗余,不要跨表進行處理。用一個表記錄所有父子實體,而用一個字段來表示實體的類型。請大家依據(jù)關(guān)系模式規(guī)范化理論討論如下實體是否要拆分成不同的實體集和聯(lián)系集,還是不拆分:例如:Customer(customer#,name,gender,birthday,city,
address,email,credit,discount,customer-type)一些實際的考慮一般來說,在將E-R圖轉(zhuǎn)換到關(guān)系表定義的過程中在線書店數(shù)據(jù)庫及關(guān)系模式Book(isbn#,title,price,press,stock)Author(author#,name,city)Written_by(isbn,author#,serial)Category(category#,super#,tag)Customer(customer#,name,gender,birthday,city,
address,email,credit,discount,customer_type)Interest_in(customer#,category#,date)Wish_for(customer#,isbn#,date,status)Order(order#,customer#,date,status,payment,name,address)Item(item#,order#,isbn,qty)在線書店數(shù)據(jù)庫及關(guān)系模式Book(isbn#,title,p思考題電話計費系統(tǒng)關(guān)于不同業(yè)務或叫特殊功能需求,比如:國內(nèi)長途,港澳長途,國際長途等,如何設(shè)計數(shù)據(jù)庫滿足:表結(jié)構(gòu)不變,永遠滿足需求,比如:減少業(yè)務,增加業(yè)務基于類似Excel表格的設(shè)計和基于E-R圖實體聯(lián)系模型(關(guān)系模式/模型)的設(shè)計比較思考題電話計費系統(tǒng)關(guān)于不同業(yè)務或叫特殊功能需求,比如:國內(nèi)長數(shù)據(jù)的統(tǒng)計分析及報表的展示功能報表展示與制作是面向業(yè)務統(tǒng)計分析人員的最終體驗,是最高層的數(shù)據(jù)統(tǒng)計分析應用的需求和表達真實例子展開(Practical
Data
Warehouse
andBusinessIntelligenceInsights)單主題1)加拿大電信2007年的年度銷售報表(1)2)加拿大電信2007年的季度銷售報表(4)3)加拿大電信2007年的月度銷售報表(12)4)加拿大電信2007年每省的年度銷售報表(10)5)加拿大電信2007年的每省的季度銷售報表(40)6)加拿大電信2007年的每省的月度銷售報表(120)7)若每省有十個縣,則需要報表10*12*10=1200
多主題這樣如果一個主題像上面的報表需求量,則有多少主題,報表數(shù)量是冪乘數(shù)的關(guān)系,尤其是同比和環(huán)比這樣的統(tǒng)計需求工作場景描述(Just
Build
It)1)新建報表時,大多數(shù)人都是使用MicrosoftExcel利用原有已經(jīng)被Excel表格加工過的數(shù)據(jù),很少使用初始規(guī)范化的數(shù)據(jù)源2)一個報表因為加工過的而造成的數(shù)據(jù)分散,需要多個業(yè)務人員協(xié)作完成3)多人協(xié)作時數(shù)據(jù)不一致,數(shù)據(jù)不規(guī)范嚴重影響工作進度解決方案使用多維建模方法論,建立以業(yè)務事件為導向的以主題(統(tǒng)計分析涉及的不同領(lǐng)域數(shù)據(jù))為相關(guān)的事實表庫(統(tǒng)計分析涉及不同數(shù)據(jù)事件模型),通過對多維模型的鉆取、切取、旋轉(zhuǎn)等操作實現(xiàn)報表的動態(tài)化和個性化,消除眾多關(guān)聯(lián)的中間報表,以實現(xiàn)Ad-hoc報表(自動化程度高的報表)逐步從依賴類似Microsoft
Excel(分散部署,數(shù)據(jù)不一致及不規(guī)范的始作俑者)表格過渡到多維統(tǒng)計分析到數(shù)據(jù)集市再到數(shù)據(jù)倉庫的路線數(shù)據(jù)的統(tǒng)計分析及報表的展示功能報表展示與制作是面向業(yè)務統(tǒng)計分Excel報表與事實表的相互轉(zhuǎn)換關(guān)系單一的Excel列表,有數(shù)據(jù)冗余,存在增刪改的異常Excel報表,依據(jù)習慣行為建立,沒有考慮增刪改的操作關(guān)聯(lián)的Excel列表,消除數(shù)據(jù)冗余,增刪改的異常不存在例如:多種產(chǎn)品只能放在一個倉庫中,一個倉庫有多個管理員。構(gòu)造關(guān)系模式(倉庫管理員,倉庫號,庫存產(chǎn)品號),存在數(shù)據(jù)冗余,重新構(gòu)造或修改為相互關(guān)聯(lián)的關(guān)系模式(倉庫號,倉庫管理員),(倉庫號,庫存產(chǎn)品號)思考:(系名,教師名,學生名)存在數(shù)據(jù)冗余嗎,怎樣修改或構(gòu)造實際上相互關(guān)聯(lián)的關(guān)系模式(E-R模型或主題數(shù)據(jù)庫)記錄了操作影響的單一事務或形成了一個事件,事件將多個實體關(guān)聯(lián)在一起,這是業(yè)務操作型數(shù)據(jù)庫系統(tǒng)的最為顯著的特征,事件構(gòu)成了事實,事實形成了主題(主題數(shù)據(jù)庫),可以被度量(統(tǒng)計分析)。理論上通過集合論的關(guān)系運算,可以得到任意統(tǒng)計分析結(jié)果,所以相對完美的解決方案是逆序,不要按習慣先做報表,有了問題(增刪改異常及新的查詢需求)才回溯數(shù)據(jù)源表:駐留在操作型關(guān)系數(shù)據(jù)庫端中間表:駐留在操作型關(guān)系數(shù)據(jù)庫端或被倒出,駐留在Excel端統(tǒng)計分析表:駐留在Excel端Excel報表與事實表的相互轉(zhuǎn)換關(guān)系單一的Excel列表,有多維模式(OLAP)的星型和雪花模型多維模式:由一個事實表(FactTable)和一組維表(DimensionTable)組成。每個維表都有一個維作為主鍵,所有這些維的主鍵組合成事實表的主鍵。事實表的非主鍵屬性稱為事實(Fact),它們一般都是數(shù)值或其他可以進行計算的數(shù)據(jù);而維表大都是文字、時間等類型的數(shù)據(jù),按這種方式組織好數(shù)據(jù)我們就可以按照不同的維(事實表主鍵的部分或全部)來對這些事實數(shù)據(jù)進行求和(summary)、求平均(average)、計數(shù)(count)、百分比(percent)的聚集計算,甚至可以做20~80分析。這樣就可以從不同的角度的數(shù)據(jù)來分析單一業(yè)務主題的事件情況當所有維表都直接連接到事實表上時,將該模型稱為星型模型當有一個或多個維表沒有直接連接到事實表上,而是通過其他維表連接到事實表上時,將該模型稱為雪花模型。雪花模型是對星型模型的維表進一步層次化的結(jié)果多維模式(OLAP)的星型和雪花模型多維模式:由一個事實表(多維模式(OLAP)的基本操作類型鉆?。―rill-up和Drill-down)
Drill-up是在某一維上將低層次的細節(jié)數(shù)據(jù)概括到高層次的匯總數(shù)據(jù),或者減少維數(shù)。Drill-down則相反,它從匯總數(shù)據(jù)深入到細節(jié)數(shù)據(jù)進行觀察或增加新維。鉆取報表是指用戶通過單擊其他報表中的鏈接打開的報表。鉆取報表通常包含某原始匯總報表中所包含的某項的詳細信息切取(Slice和Dice)切片(Slice)和切塊(Dice是在一部分維上選定值后,關(guān)心度量數(shù)據(jù)在剩余維上的分布。如果剩余的維只有兩個,則是切片。如果有三個或以上,則是切塊透視(Pivot)
Pivot是變換維的方向,即在表格中重新安排維的放置(例如行列互換)。透視是模型中跟蹤不同數(shù)據(jù)集的對象的子集。通常為特定的用戶組或業(yè)務方案定義透視,從而便于導航大型數(shù)據(jù)集。在透視中,表、列和度量值(包括KPI)定義為字段對象??梢赃x擇將在各透視中包括的字段。例如,單個模型可以包含產(chǎn)品、銷售、財務、員工和地理數(shù)據(jù)。在銷售部要求產(chǎn)品、銷售、促銷和地理數(shù)據(jù)時,可能不需要員工和財務數(shù)據(jù)。同樣,人力資源部門不需要與銷售促銷和地理有關(guān)的數(shù)據(jù)注意:請關(guān)注這些術(shù)語和英語專用詞多維模式(OLAP)的基本操作類型鉆?。―rill-up和D多維模式(OLAP)的基本操作類型事例多維模式(OLAP)的基本操作類型事例Excel表格和關(guān)系模式(規(guī)范化表)的關(guān)系Excel表格和Excel列表的區(qū)別
MicrosoftWeb(微軟官網(wǎng))
Excel列表注釋
Excel列表是Excel2003中的新增功能。列表是您可以與較大的工作表獨立開來而單獨進行操作的一部分工作表,這樣操作對周圍任何數(shù)據(jù)都沒有影響。例如,可以添加數(shù)據(jù)、對數(shù)據(jù)進行排序、重新排列列表中的行,而不影響周圍的單元格。Excel列表還可以加快工作速度,因為它提供了一組數(shù)據(jù)操作工具,包括“自動篩選”按鈕和一組聚合函數(shù),可以從同一位置使用這些聚合函數(shù)。同時還可以使用Excel列表從不同的外部數(shù)據(jù)源(關(guān)系模式)創(chuàng)建數(shù)據(jù)透視表(Pivot)。右面是一個典型的Excel2003列表
是
“自動篩選”按鈕:該按鈕會自動顯示,它們所提供的功能與早期版本的Excel功能相同。您可以使用該按鈕快速對數(shù)據(jù)進行排序和篩選、查找高低值等等是邊框:邊框?qū)⒘斜碇械膯卧衽c周圍數(shù)據(jù)區(qū)分開是“插入”行:星號表示行。您可以直接在該行的單元格中鍵入數(shù)據(jù),列表會自動調(diào)整大小以容納新數(shù)據(jù)是“匯總”行:單擊此行中的某個單元格可以從聚合函數(shù)列表中進行選擇。您可以使用“列表”工具欄顯示或隱藏“匯總”行。當您顯示“匯總”行時,如果右側(cè)的列中包含數(shù)字數(shù)據(jù),Excel會將該列中的數(shù)據(jù)自動進行相加是聚合函數(shù):選擇某個函數(shù)以將其插入到“匯總”行中選定的單元格。您不必手動輸入該函數(shù),這樣您可以在更短的時間內(nèi)更準確地添加計算是調(diào)整手柄:通過拖動該手柄可以修改列表的大小Excel表格和關(guān)系模式(規(guī)范化表)的關(guān)系Excel表格和EExcel列表與多維模式(OLAP)的關(guān)系在Excel中,在沒有連接任何OLAP數(shù)據(jù)源的情況下,也支持旋轉(zhuǎn)透視表(Pivot),這算是一種非常簡易的OLAP前端(微軟官網(wǎng))OLAP是為了提高檢索數(shù)據(jù)的速度。因為在創(chuàng)建或更改報表時,會計算匯總值,這樣就只有較少數(shù)據(jù)送到Excel中。此方法使得可以處理的源數(shù)據(jù)比使用傳統(tǒng)數(shù)據(jù)庫組織的數(shù)據(jù)更多。因為對于傳統(tǒng)數(shù)據(jù)庫,Excel必須先檢索所有單個記錄后,再計算匯總值(微軟官網(wǎng))在Excel中的OLAP和非OLAP數(shù)據(jù)透視表的區(qū)別(微軟官網(wǎng))Excel列表與多維模式(OLAP)的關(guān)系在Excel中,在Excel列表與Excel數(shù)據(jù)透視表的關(guān)系用戶可以從四種類型的數(shù)據(jù)源中來創(chuàng)建數(shù)據(jù)透視表(Pivot)Excel數(shù)據(jù)列表,可以進行增加,刪除,修改,查詢(CURD)等列表操作外部數(shù)據(jù)源,比如:關(guān)系型數(shù)據(jù)庫,結(jié)構(gòu)良好的文件等,可以視作數(shù)據(jù)準備的結(jié)果多個獨立的Excel數(shù)據(jù)列表其他的數(shù)據(jù)透視表,或者甚至于來自其他異構(gòu)的系統(tǒng)數(shù)據(jù)透視表的關(guān)鍵術(shù)語數(shù)據(jù)源,從中創(chuàng)建數(shù)據(jù)透視表的數(shù)據(jù)列表或多維數(shù)據(jù)集,可以視作數(shù)據(jù)準備的結(jié)果軸,數(shù)據(jù)透視表中的一個維統(tǒng)計匯總函數(shù),公式編輯器,KPI分類匯總,分類KPI刷新,自動計算數(shù)據(jù)透視表,以反映當前的數(shù)據(jù)源狀態(tài)演示:在Excel中使用OLAP數(shù)據(jù)透視表深入了解獵奇公司-Excel–Office.om(大型業(yè)務數(shù)據(jù)庫組織成多維數(shù)據(jù)集從而支持商業(yè)智能的技術(shù))Excel列表與Excel數(shù)據(jù)透視表的關(guān)系用戶可以從四種類型微軟官網(wǎng)演示URL微軟官網(wǎng)演示URL多維模式構(gòu)造演進路線圖數(shù)據(jù)源層數(shù)據(jù)準備階段層協(xié)調(diào)層加載層數(shù)據(jù)倉庫層統(tǒng)計分析層數(shù)據(jù)源層數(shù)據(jù)準備階段層數(shù)據(jù)集市層統(tǒng)計分析層數(shù)據(jù)源層數(shù)據(jù)準備階段層統(tǒng)計分析層數(shù)據(jù)準備階段層的角色是中間協(xié)調(diào)和處理數(shù)據(jù)源以生成基于操作型或事務型數(shù)據(jù)的多維視圖模式。演進的核心價值是基于對數(shù)據(jù)準備階段層的粒度、分層、分類、模式,物理部署的考量統(tǒng)計分析層的角色只是友善的用戶使用體驗,統(tǒng)計分析層有太多的物理實現(xiàn)或工具型系統(tǒng)可供選擇多維模式構(gòu)造演進路線圖數(shù)據(jù)源層數(shù)據(jù)準備階段層協(xié)調(diào)層加載層數(shù)據(jù)終極目標:Ad-hoc報表系統(tǒng)以Birt的多維Ad-hoc報表引擎和報表設(shè)計器(IBM
Developer
Resource)為例BIRT(BusinessIntelligenceandReportingTools),是為Web應用程序開發(fā)的基于Eclipse的開源報表系統(tǒng),特別之處在于它是以Java和J2EE為基礎(chǔ)。BIRT有兩個主要組件:基于Eclipse的報表設(shè)計器,以及部署到應用服務器上的運行時組件支持團隊作業(yè),在一個團隊中,不同的設(shè)計者設(shè)計報表的時候,能夠保證報表風格的統(tǒng)一;同時使得設(shè)計得到重用,從而提高工作效率;能夠集中定義一些常用的資源,從而避免一處資源的變動,所有報表都要修改的情況發(fā)生超短時間面對數(shù)百萬行或列的超大數(shù)據(jù)源進行報表制作;瞬間改變報表的統(tǒng)計視角及統(tǒng)計方法;從容面對包括關(guān)系型和多維型等的多種數(shù)據(jù)源;任意角度查看的匯總報表和明細報表;以上這些盡量地均不使用公式求解器或通過編寫代碼來完成,這樣也就實現(xiàn)了自動化程度較高的報表系統(tǒng)演示:在Birt中使用OLAP數(shù)據(jù)透視表及Ad-hoc報表終極目標:Ad-hoc報表系統(tǒng)以Birt的多維Ad-hoc報Ad-hoc報表演示URLAd-hoc報表演示URL思考題及調(diào)研表請說明Excel(Spreadsheet微軟以外的稱呼:比如Google
Doc中的Spreadsheet,IBM
Lotus1-2-3
Spreadsheet,Libreoffice中的Spreadsheet)的價值和應用意義E-R模式(模型)轉(zhuǎn)化為關(guān)系模式(模型)后,一個關(guān)系表和其他相關(guān)關(guān)系表形成了什么基數(shù)關(guān)系(從語義學角度分別論述),如何通過主題數(shù)據(jù)庫的關(guān)系模式理解E-R模式的概念及現(xiàn)實世界信息及邏輯的模型Pivot和OLAP及多維模式的區(qū)別和聯(lián)系,多維模式和關(guān)系模式的區(qū)別和聯(lián)系怎樣通過Excel列表,建立多個列表相互之間的關(guān)聯(lián)關(guān)系(請參考:使用實體關(guān)系模型或通過搜索網(wǎng)絡(luò)來解答或查閱參考文檔),Excel(Spreadsheet)是否能完全實現(xiàn)Ad-hoc報表功能要求通過什么途徑,如何成為Excel(Spreadsheet)應用專家;假以時日,更加努力地成為數(shù)據(jù)庫(關(guān)系模式)和數(shù)據(jù)倉庫(多維模式)的應用專家實踐及調(diào)研:請區(qū)分和梳理個人統(tǒng)計分析及報表的工作,區(qū)別數(shù)據(jù)源和操作(因操作事務而加工引起數(shù)據(jù)的變化),請用Excel事例使用過程請大家及時反饋交流意見,多提寶貴意見,教學相長。謝謝大家!思考題及調(diào)研表請說明Excel(Spreadsheet微軟以數(shù)據(jù)庫及數(shù)據(jù)倉庫精要終極目標:Ad-hoc報表系統(tǒng)Ad-hoc釋義:即時的、隨意的、特殊的數(shù)據(jù)庫及數(shù)據(jù)倉庫精要終極目標:Ad-hoc報表系統(tǒng)Ad-ho前言數(shù)據(jù)庫扮演的角色也叫聯(lián)機事務處理OLAP(OnlineTransactionalProcessing),數(shù)據(jù)庫保存由日常管理過程中涉及的業(yè)務操作創(chuàng)建的操作型結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)記錄系統(tǒng)管理行為(通過各種業(yè)務邏輯來交互)。反映細粒度的事務數(shù)據(jù),保存時間短。主要依賴關(guān)系模式建模方法論。數(shù)據(jù)倉庫扮演的角色也叫聯(lián)機分析處理OLAP(OnlineAnalyticalProcessing),數(shù)據(jù)由聯(lián)機事務處理來,經(jīng)過選擇和聚集,變?yōu)榻y(tǒng)計分析事實產(chǎn)生的因果,輔助決策制定(通過各種統(tǒng)計分析報表來交互)。反映大范圍的事實數(shù)據(jù)(業(yè)務事件的累積),保存時間長。主要依賴多維模式建模方法論主題、事實和事件(請注意語義)
事實是一個主題,比如:銷售、配送、住院、手術(shù)等。一個主題對應了多個相互關(guān)聯(lián)的關(guān)系模式,也可以叫做相關(guān)關(guān)系表。事實的實例對應著發(fā)生的事件,比如:一個執(zhí)行的銷售、配送、住院、手術(shù)等都是一個事件。每個事實由一組提供了事件的量化描述的度量的屬性值描述,比如:銷售收入、配送量、住院支出、手術(shù)時間等通過語義將數(shù)據(jù)庫和數(shù)據(jù)倉庫結(jié)合在一起前言數(shù)據(jù)庫扮演的角色從報表到報表存在的問題及對策綱領(lǐng)對策綱領(lǐng)實體(關(guān)系所代表的實體)原子化,是指實體本身不能再分解屬性原子化,是指實體的屬性(值域所代表的屬性)本身不能再分解主鍵原子化,是指實體的主鍵本身是一個唯一的ID字段聯(lián)系原子化,是指實體間的聯(lián)系(關(guān)系所代表的聯(lián)系)都是一對多的聯(lián)系命題原子化,是指語義角度的聯(lián)系原子化現(xiàn)實(面對單一主題,數(shù)據(jù)規(guī)模極小,僅是面對招投標業(yè)務追蹤)1)第二個表是從第一個表通過高級程序員編寫VBA程序?qū)崿F(xiàn),第一個表也是專業(yè)定崗員工通過Excel專用表單維護和更新的,背后其實還是高級程序員的工作價值體現(xiàn)2)信息化崗位需求及配置:高級程序員四名,六個專業(yè)業(yè)務人員。滿負荷工作以應對數(shù)據(jù)變動和操作功能變動解決方案:報表列表化,去除冗余數(shù)據(jù),建模信息化模型(數(shù)據(jù)庫模型)并影射和實現(xiàn)為Access桌面數(shù)據(jù)庫應用從報表到報表存在的問題及對策綱領(lǐng)對策綱領(lǐng)現(xiàn)實(面對單一主題,問題的導入-從Excel表格出發(fā)引出的問題結(jié)構(gòu)良好的表,范式,SQL語言,關(guān)系模式及E-R圖基本表與中間表、臨時表不同,基本表及其字段之間的關(guān)系,應盡量滿足第三范式,是結(jié)構(gòu)良好的表,它可以消除刪除行,改變行,修改行(實例)的錯誤和異常。它具有如下四個特性:(1)原子性,基本表中的字段是不可再分解的。(2)原始性,基本表中的記錄是原始數(shù)據(jù)(基礎(chǔ)數(shù)據(jù))的記錄。(3)演繹性,由基本表與代碼表中的數(shù)據(jù),可以派生出所有的輸出數(shù)據(jù)。(4)穩(wěn)定性,基本表的結(jié)構(gòu)是相對穩(wěn)定的,表中的記錄是要長期保存的。(5)基本表的每個決定因子都必須是候選建。(6)非基本表必須分解為兩個或多個基本表。三個基本范式:(1)1NF是對屬性的原子性約束,要求屬性具有原子性,不可再分解。(2)2NF是對記錄的惟一性約束,要求記錄有惟一標識,即實體的惟一性。(3)3NF是對字段冗余性的約束,即任何字段不能由其他字段派生出來,它要求字段沒有冗余大多數(shù)結(jié)構(gòu)不良好的表,會產(chǎn)生或包含大量的冗余數(shù)據(jù),同時可能會出現(xiàn)刪除行,改變行,修改行的錯誤和異常,這都是都是使用了SQLDMLCURD語句產(chǎn)生的。像中間表、報表和臨時表:(1)
中間表是存放統(tǒng)計分析數(shù)據(jù)的表,它是為數(shù)據(jù)倉庫、輸出報表或查詢結(jié)果而設(shè)計的,有時它沒有主鍵與外鍵(數(shù)據(jù)倉庫除外)。(2)
臨時表是程序員個人設(shè)計的,存放臨時記錄,為個人所用。(3)
基表和中間表由DBA維護,臨時表由程序員自己用程序自動維護。關(guān)系是一個由行和列組成的二維表,不一定結(jié)構(gòu)良好,特征為:行包括實體的數(shù)據(jù),列包含實體性質(zhì)的數(shù)據(jù),表中的單元格存儲單個值,每列的所有實體類型一致,每列具有唯一名稱,列的順序任意,行的順序任意,任意兩行互不重復。這是最大的復合關(guān)系模式的條件,符合這個要求的表就是關(guān)系型表格。通過E-R圖將這些概念反映出來,通過名詞性和動詞性,完全可以描述客觀世界,其中名詞性描述實體,動詞性描述聯(lián)系或動作影響,通過動詞性將不同的實體關(guān)聯(lián)在一起第一目標或者叫基礎(chǔ)目標:統(tǒng)計,匯總及分析報表的工作盡量地自動用Excel或Spreadsheet做,幾乎不需人為干預問題的導入-從Excel表格出發(fā)引出的問題結(jié)構(gòu)良好的表,范式目錄E-R模型的概念與表示實體-聯(lián)系方法(概念模型及設(shè)計,關(guān)注現(xiàn)實世界)關(guān)系模式的規(guī)范化(消除數(shù)據(jù)冗余,避免操作異常)E-R圖向關(guān)系表(Schema)的轉(zhuǎn)換(邏輯模型及設(shè)計,關(guān)注信息世界)多維模式與統(tǒng)計分析的關(guān)系Excel或Spreadsheet在統(tǒng)計分析中的角色統(tǒng)計分析系統(tǒng)(多維模式建構(gòu))的演進終極目標:Ad-hoc報表系統(tǒng)目錄E-R模型的概念與表示關(guān)于現(xiàn)實世界事實及描述的定義事實包括以下四個方面:
第一:事實是指“某物具有某種性質(zhì)或某些事物具有某種關(guān)系。”
與原子命題、分子命題的分類相對應,事實可以分為原子事實、分子事實。其中,原子事實是最基本、最簡單的事實,從中不能再析出其它事實;分子事實是原子事實的復合
第二:事實具有客觀性?!按蠖鄶?shù)的事實的存在都不依靠我們的意愿;這就是為什么我們把它們叫作‘嚴峻的’、‘不肯遷就的’或‘不可抗拒’的理由。大部分物理事實的存在不僅不依靠我們的意愿,而且也不依靠我們的存在”
第三:現(xiàn)實世界由各種各樣的事實組合而成,事實屬于現(xiàn)實世界
第四:事實決定命題的真?zhèn)危笆聦嵤鞘沟妹}為真或為假的東西”。具體說來,原子命題的真假取決于它是否與原子事實相符合,分子命題的真假取決于組成它的原子命題的真假現(xiàn)實世界的語義描述的存在第一:原子命題第二:分子命題第三:段落(由多個邏輯緊密相關(guān)的分子命題構(gòu)成)第四:主題(由多個邏輯緊密相關(guān)的段落構(gòu)成)關(guān)于現(xiàn)實世界事實及描述的定義事實包括以下四個方面:E-R模型的概念與表示E-R圖也稱實體-聯(lián)系圖(EntityRelationshipDiagram),提供了表示實體類型、實體屬性和相關(guān)實體之間聯(lián)系(三個要素)的方法,用來描述現(xiàn)實世界的概念模型關(guān)系數(shù)據(jù)庫使用實體-聯(lián)系模型(E-R模型)進行數(shù)據(jù)庫設(shè)計,以構(gòu)造信息世界的邏輯模型。E-R數(shù)據(jù)庫設(shè)計工具提供了一個“方框與箭頭”的繪圖工具,幫助數(shù)據(jù)庫用戶建立E-R圖來描繪數(shù)據(jù),邏輯及現(xiàn)實世界E-R圖可以手繪,亦可以借用Case工具(PowerDesigner,Visio或SQL
Power
Architect)做出考察單獨的一個聯(lián)系(動詞類型的語義連接及構(gòu)造能力),聯(lián)系及相互關(guān)聯(lián)的實體形成的一個描述,構(gòu)造了一個最基本的原子命題E-R模型的概念與表示E-R圖也稱實體-聯(lián)系圖(EntityE-R模型的概念與表示實體集-語義(名詞類性)實體(Entity)事物就是在行動影響下物質(zhì)本身的改變,或者進行??陀^存在并可相互區(qū)別的事物稱為實體。實體可以是具體的,也可以是抽象的概念或聯(lián)系。具有共性的一類實體可歸類為一個實體集(Entityset)。屬性(Attribute)實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。域(Domain)屬性的取值范圍或類型。鍵或標識符(Key)標識符是實體中一個或多個屬性的集合,可用來唯一標識實體中的一個實例。每個實體都必須至少有一個標識符。如果實體只有一個標識符,則它為實體的主標識符。如果實體有多個標識符,則其中一個被指定為主標識符,其余的標識符就是次標識符(候選標識符)E-R模型的概念與表示實體集-語義(名詞類性)E-R模型的概念與表示聯(lián)系集-語義(動詞類型)實體之間可以通過聯(lián)系來相互關(guān)聯(lián)。與實體和實體集對應,聯(lián)系也可以分為聯(lián)系和聯(lián)系集,聯(lián)系集是實體集之間的聯(lián)系,聯(lián)系是實體之間的聯(lián)系,聯(lián)系是具有方向性的。聯(lián)系具有方向性,每個方向上都有一個基數(shù)。聯(lián)系的兩個方向上各自包含有一角色名,描述該方向聯(lián)系的作用。按照實體類型中實例之間的數(shù)量對應關(guān)系,通??蓪⒙?lián)系分為4個基本聯(lián)系分為類,即一對一(ONE
TOONE)聯(lián)系、一對多(ONETOMANY)聯(lián)系、多對一(MANYTOONE)聯(lián)系和多對多聯(lián)系(MANYTOMANY)。三個特殊聯(lián)系每個實體類型都有自己的標識符,如果兩個實體集之間發(fā)生聯(lián)系,其中一個實體類型的標識符進入另一個實體類型并與該實體類型中的標識符共同組成其標識符時,這種聯(lián)系則稱為標定聯(lián)系,也叫依賴聯(lián)系。反之稱為非標定聯(lián)系,也叫非依賴聯(lián)系。遞歸聯(lián)系是實體集內(nèi)部實例之間的一種聯(lián)系,通常形象地稱為自反聯(lián)系。同一實體類型中不同實體集之間的聯(lián)系也稱為遞歸聯(lián)系。E-R模型的概念與表示聯(lián)系集-語義(動詞類型)E-R模型的概念與表示(使用Case工具時的圖符及事例)E-R模型的概念與表示(使用Case工具時的圖符及事例)E-R模型的概念與表示E-R圖的設(shè)計步驟
第一步:針對特定的應用,確定實體、屬性和實體間的聯(lián)系,畫出局部E-R圖。第二步:綜合各個局部E-R圖,產(chǎn)生反映數(shù)據(jù)庫整體概念的總體E-R圖。E-R模型的概念與表示E-R圖的設(shè)計步驟E-R模型的概念與表示(手繪草圖事例)弱實體集有些實體集的所有屬性都不足以形成主碼,這樣的實體集稱為弱實體集(WeakEntitySet),依賴于其它實體集而存在。與此相對,其屬性可以形成主碼的實體集稱為強實體集。弱實體集所依賴的實體集稱為標識實體集(identifyingentityset),相應的關(guān)系為標識聯(lián)系(identifyingrelationship)。OrderItemdatestatuspaymentorder#item#tagIncludeE-R模型的概念與表示(手繪草圖事例)弱實體集OrderItE-R模型的概念與表示弱實體集通常沒有主鍵。以訂單的分項為例,訂單項實體集可能有編號(局部的編號)、商品名稱、數(shù)量、單價等屬性,但是這些屬性不足以識別一個定單項,因為完全有可能在另外一張訂單中出現(xiàn)相同的內(nèi)容。必須把訂單的關(guān)鍵字(如一個全局的訂單編號)和定單項的局部編號結(jié)合起來才能標示一個定單項。弱實體集的屬性中,用來與標識實體集的鍵結(jié)合以識別一個弱實體集的屬性稱為部分鍵(partialkey)。弱實體集的主鍵=它的標識實體集的鍵+它的部分鍵E-R模型的概念與表示弱實體集通常沒有主鍵。E-R模型的概念與表示(手繪草圖事例)E-R圖使用雙線矩形表示弱實體集,弱實體集與其標識實體集之間的聯(lián)系用雙線菱形表示,弱實體集的部分鍵使用虛下劃線表示。OrderItemdatestatuspaymentorder#item#tagIncludeE-R模型的概念與表示(手繪草圖事例)E-R圖使用雙線矩形表E-R模型的概念與表示實體集的層次關(guān)系現(xiàn)實世界中的很多概念之間都具體層次關(guān)系。E-R模型使用實體集間的繼承和ISA關(guān)系來描述這種概念間的層次關(guān)系實體集老師或?qū)W生都繼承自實體集人,并且實體集老師或?qū)W生與實體集人之間都滿足ISA關(guān)系,即老師或?qū)W生都是人的一種。ISA關(guān)系可以從兩個方向進行設(shè)計從自上而下的方向,首先設(shè)計出人這一實體,然后根據(jù)屬性的不同,將兩種不同的人具體化(specification)為老師或者學生。從自下而上的方向,首先設(shè)計出老師或?qū)W生,然后將他們的共性提取出來,泛化(generalization)為人。E-R模型的概念與表示實體集的層次關(guān)系E-R模型的概念與表示層次關(guān)系的約束從子實體集之間是否相交角度,不相交(disjoin)泛化要求繼承自同一父輩的多個子實體集之沒有交集,重疊(overlapping)泛化則允許有交集。從泛化是否完全角度,全參與泛化要求所有父輩實體都必須同時也是某一子輩實體,部分泛化則允許不是任何子輩實體的父輩實體存在。例如,在采用會員制的銷售系統(tǒng)中,顧客被分為會員(VIP)與非會員(NONVIP)兩種,會員擁有消費積分(credit),非會員擁有固定的折扣率(discount)。一個顧客要么是會員、要么是非會員,二者必取其一,因此為全參與不相交。E-R模型的概念與表示層次關(guān)系的約束E-R模型的概念與表示(手繪草圖事例)CustomerISAVIPNONVIPcreditdiscountdisjoincustomer#namegenderbirthdaycityaddressemailE-R模型的概念與表示(手繪草圖事例)CustomerISAE-R圖符(手繪草圖事例)E-R圖符(手繪草圖事例)實體-聯(lián)系方法實體還是屬性凡是滿足以下兩條準則的事物,一般均可作為屬性對待。作為屬性,不能再具有需要描述的性質(zhì)。屬性必須是不可分的數(shù)據(jù)項,不能包含其他屬性。屬性不能與其他實體具有聯(lián)系,即E-R圖中所表示的聯(lián)系是實體之間的聯(lián)系。例如書籍是一個實體,書號、書名、作者、出版社、定價是書籍的屬性,如果應用系統(tǒng)不再需要作者的其他信息,如電話、住址、個人主頁等,那么根據(jù)原則1可以將作者作為書籍的屬性對待。但是如果這些信息是必須的,那么作者作為一個實體看待更為恰當。實體-聯(lián)系方法實體還是屬性實體-聯(lián)系方法(手繪草圖事例)bookisbntitlepricepresswritten_bynameauthorauthorcityserialbookisbntitlepricepressauthor實體-聯(lián)系方法(手繪草圖事例)bookisbntitlep實體-聯(lián)系方法實體還是聯(lián)系一般來說,實體對應現(xiàn)實世界中實際存在的事物,是名詞類型;聯(lián)系對應的概念一般是一種動作,是動詞類型。例如:書和作者都是現(xiàn)實世界中的名詞,因此作為實體。而written_by表示作者寫書這一動作,因此作為聯(lián)系。映射基數(shù)往往影響到一個概念是作為實體還是聯(lián)系的選擇。若一項貸款只能由一個分行發(fā)放,并且只能由一個客戶借貸,則將Loan作為Customer與Branch之間的聯(lián)系比較合適。但如果允許多個客戶共同借貸同一項貸款,在這種情況下,將Loan作為實體。實體-聯(lián)系方法實體還是聯(lián)系實體-聯(lián)系方法(手繪草圖事例)二元關(guān)系還是多元關(guān)系數(shù)據(jù)庫中使用得最多的是二元聯(lián)系。通常,將多元關(guān)系轉(zhuǎn)換為二元關(guān)系。如學校選課系統(tǒng),涉及到學生、教室、教師、課程等多個實體,可表示為一個四元關(guān)系。
學生上課教室教師課程學生選課課程授課教師地點教室實體-聯(lián)系方法(手繪草圖事例)二元關(guān)系還是多元關(guān)系學生上課教實體-聯(lián)系方法(手繪草圖事例)但也有一些情況下使用多元聯(lián)系更好(如需要表達多個實體集間的約束時)如學校選課系統(tǒng)中若一門課程可由多個教師教授,并且若課程和教師確定,則上課的地點也隨之確定。實體-聯(lián)系方法(手繪草圖事例)但也有一些情況下使用多元聯(lián)系更實體-聯(lián)系方法(手繪草圖事例)聯(lián)系屬性的放置影響聯(lián)系屬性放置的主要因素是聯(lián)系的映射基數(shù)。對于一對一或一對多聯(lián)系,選擇作為聯(lián)系屬性或?qū)嶓w屬性只是體現(xiàn)語義側(cè)重點的不同如銷售系統(tǒng)需要記錄顧客(Customer)與訂單(Order)之間的關(guān)系(Possess)。由于一個訂單只能由一個顧客所有,因此為顧客與訂單之間為一對多關(guān)系。這時,記錄生成訂單日期的屬性(date)既可以作為聯(lián)系Possess的屬性,也可作為訂單的屬性。
OrderdatestatuspaymentorderPossesCustomer實體-聯(lián)系方法(手繪草圖事例)聯(lián)系屬性的放置Orderdat實體-聯(lián)系方法(手繪草圖事例)對于多對多聯(lián)系,聯(lián)系的屬性不能作為實體的屬性。如,顧客與希望書籍之間的聯(lián)系希望購買(Wish_for)。Wish_for有一屬性date,表示顧客發(fā)出購買意向的日期,這一屬性不能作為參與聯(lián)系的兩個實體Customer或Book的屬性。BookWish_forCustomerdate實體-聯(lián)系方法(手繪草圖事例)對于多對多聯(lián)系,聯(lián)系的屬性不能實例——在線書店數(shù)據(jù)庫類似于Amazon的在線書店系統(tǒng)所用的數(shù)據(jù)庫數(shù)據(jù)庫中要求存儲所有書籍的相關(guān)信息,并對書加以分類;顧客的有關(guān)信息也要求存儲在數(shù)據(jù)庫中,并且允許用戶選擇自己感興趣的書籍類別及希望購買的圖書;顧客在決定購買時可以發(fā)出訂單,同一訂單可以包含多種書,每種書可一次購買多本。顧客在訂單中提供送貨地址,系統(tǒng)根據(jù)訂單發(fā)貨。實例——在線書店數(shù)據(jù)庫類似于Amazon的在線書店系統(tǒng)所用的實例——在線書店數(shù)據(jù)庫E-R圖(手繪草圖事例)實例——在線書店數(shù)據(jù)庫E-R圖(手繪草圖事例)實例——在線書店數(shù)據(jù)庫合并分E-R圖各分E-R圖之間的沖突主要有三類:屬性沖突
(1)屬性域沖突,即屬性值的類型、取值范圍或取值集合不同。
例如:屬性“訂單號”有的定義為字符型,有的為數(shù)值型。
(2)屬性取值單位沖突。
例如:屬性“庫存”有的以冊為單位,有的以千冊為單位。
命名沖突
(1)
同名異義。不同意義對象相同名稱。
例如:Author和Customer均有屬性name。
(2)
異名同義(一義多名)。同意義對象不相同名稱。
例如:“項目”和“課題”。
實例——在線書店數(shù)據(jù)庫合并分E-R圖實例——在線書店數(shù)據(jù)庫結(jié)構(gòu)沖突
(1)
同一對象在不同應用中具有不同的抽象。
例如:“作者”在某一局部應用中被當作實體,而在另一局部應用中則被當作屬性。
(2)
同一實體在不同局部視圖中所包含的屬性不完全相同,或者屬性的排列次序不完全相同。
(3)
實體之間的聯(lián)系在不同局部視圖中呈現(xiàn)不同的類型。
例如:實體E1與E2在局部應用A中是多對多聯(lián)系,而在局部應用B中是一對多聯(lián)系;又如在局部應用X中E1與E2發(fā)生聯(lián)系,而在局部應用Y中E1、E2、E3三者之間有聯(lián)系。
解決方法是根據(jù)應用的語義對實體聯(lián)系的類型進行綜合或調(diào)整。
實例——在線書店數(shù)據(jù)庫結(jié)構(gòu)沖突
(1)
同一對關(guān)系模式設(shè)計范式(范式,數(shù)據(jù)庫設(shè)計范式,數(shù)據(jù)庫關(guān)系表的設(shè)計范式)是符合某一種級別的關(guān)系模式的集合。構(gòu)造數(shù)據(jù)庫必須遵循一定的規(guī)則。在關(guān)系數(shù)據(jù)庫中,這種規(guī)則或者叫約束就是范式。關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求,即滿足不同的范式第一范式(1NF):在任何一個關(guān)系數(shù)據(jù)庫中,第一范式(1NF)是對關(guān)系模式的基本要求,不滿足第一范式(1NF)的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫。所謂第一范式(1NF)是指數(shù)據(jù)庫表的每一列都是不可分割的基本數(shù)據(jù)項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復的屬性。如果出現(xiàn),就可能需要定義一個新的實體,新實體與原實體之間為一對多關(guān)系第二范式(2NF):數(shù)據(jù)庫表中不存在非關(guān)鍵字段對任一候選關(guān)鍵字段的部分函數(shù)依賴(部分函數(shù)依賴指的是存在組合關(guān)鍵字中的某些字段決定非關(guān)鍵字段的情況),也即所有非關(guān)鍵字段都完全依賴于任意一組候選關(guān)鍵字。如果存在,那么這個屬性和主關(guān)鍵字的這一部分應該分離出來形成一個新的實體,新實體與原實體之間是一對多的關(guān)系第三范式(3NF):要求一個數(shù)據(jù)庫表中不包含已在其它表中已包含的非主關(guān)鍵字信息。例如,存在一個部門信息表,其中每個部門有部門編號(dept_id)、部門名稱、部門簡介等信息。那么在員工信息表中列出部門編號后就不能再將部門名稱、部門簡介等與部門有關(guān)的信息再加入員工信息表中。如果不存在部門信息表,則根據(jù)第三范式(3NF)也應該構(gòu)建它,否則就會有大量的數(shù)據(jù)冗余。如果存在,應該分離這一部分出來形成一個新的實體,新實體與原實體之間是一對多的關(guān)系關(guān)鍵要理解定義這種范式標準的主要目的是為了減少數(shù)據(jù)冗余,數(shù)據(jù)冗余產(chǎn)生的本質(zhì)就是在一個表中存在字段與字段之間的一對多,或者多對多關(guān)系。滿足這些規(guī)范的數(shù)據(jù)庫是簡潔的、結(jié)構(gòu)明晰的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智慧醫(yī)療中心運營管理費收取協(xié)議
- 二零二五年度房屋租賃權(quán)抵押評估報告?zhèn)浒笇徍朔课葙J款合同
- 二零二五年度電力系統(tǒng)運行電工服務協(xié)議
- 電子支付賬戶管理服務合同
- 日常行政管理操作規(guī)范
- 心理咨詢行業(yè)個人咨詢服務協(xié)議
- 全國醫(yī)藥研發(fā)中心技術(shù)轉(zhuǎn)讓合同
- 貨物運輸代理協(xié)議書
- 數(shù)據(jù)驅(qū)動的智慧城市建設(shè)項目協(xié)議
- 高考語文備考:政論類文言文之《淮南子》匯編
- 二元一次方程組應用題(50題)
- 出生證警示教育培訓
- KYC高客營銷培訓
- 通信工程建設(shè)標準強制性條文匯編(2023版)-定額質(zhì)監(jiān)中心
- 《現(xiàn)代家政導論》電子教案 4.2模塊四項目二家政教育發(fā)展認知
- 現(xiàn)代家政導論-課件 5.2.2認識我國家政服務業(yè)
- DB11∕512-2017 建筑裝飾工程石材應用技術(shù)規(guī)程
- 員工二級安全教育培訓試題及答案
- 2024年度中國AI大模型場景探索及產(chǎn)業(yè)應用調(diào)研報告-2024
- 2025年駕駛證資格考試科目一必刷題庫及答案(共300題)
- 大學英語四級必背單詞詞匯資料表
評論
0/150
提交評論