网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公務(wù)員期刊網(wǎng) 論文中心 正文

數(shù)據(jù)庫(kù)關(guān)系模式整合方法

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了數(shù)據(jù)庫(kù)關(guān)系模式整合方法范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。

數(shù)據(jù)庫(kù)關(guān)系模式整合方法

本文作者:張麗君 單位:河南科技學(xué)院

一、引言

在整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)過(guò)程中,總共分為六個(gè)基本階段,即需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)的實(shí)施、數(shù)據(jù)庫(kù)試運(yùn)行階段就。其中在邏輯結(jié)構(gòu)設(shè)計(jì)階段的主要任務(wù)是如何將概念結(jié)構(gòu)轉(zhuǎn)換的關(guān)系模式進(jìn)行優(yōu)化。因?yàn)閱渭兊膹母拍罱Y(jié)構(gòu)轉(zhuǎn)換的關(guān)系模式不一定具有“好”的性質(zhì)。一個(gè)具有“好”的性質(zhì)的關(guān)系模式中,沒有不必要的冗余數(shù)據(jù),也沒有異?,F(xiàn)象存在。所謂的冗余數(shù)據(jù)是指沒有必要重復(fù)、大量出現(xiàn)的數(shù)據(jù),在數(shù)據(jù)庫(kù)中我們也不可能完全避免冗余現(xiàn)象,但是我們可以盡量減少冗余數(shù)據(jù)。異?,F(xiàn)象主要是指在對(duì)數(shù)據(jù)庫(kù)進(jìn)行增、刪、改操作的時(shí)候可能會(huì)出現(xiàn)的一些錯(cuò)誤現(xiàn)象。

二、實(shí)例分析

下面通過(guò)一個(gè)實(shí)例說(shuō)明一個(gè)“不好”的數(shù)據(jù)庫(kù)中存在的問(wèn)題?,F(xiàn)有一個(gè)學(xué)生信息管理系統(tǒng),其中的一個(gè)“學(xué)生選課管理表”包含以下屬性:學(xué)號(hào)(sno),系別(sdept),系主任名(mname),課程號(hào)(cno),成績(jī)(grade)。假設(shè)這個(gè)表中總共有4名學(xué)生,分別選修了不同的課程,如下表1所示:那么在這個(gè)關(guān)系模式中存在什么問(wèn)題呢?經(jīng)過(guò)分析,主要存在以下問(wèn)題:

1.數(shù)據(jù)冗余嚴(yán)重:每個(gè)院系的學(xué)生選一門課程,其系名就重復(fù)存儲(chǔ)一次;每個(gè)院系有多少個(gè)學(xué)生選課,系主任名就重復(fù)存儲(chǔ)多少次。

2.更新異常(UpdateAnomalies):由于存在數(shù)據(jù)冗余必然會(huì)導(dǎo)致更新數(shù)據(jù)時(shí),操作更加復(fù)雜,使得維護(hù)數(shù)據(jù)完整性代價(jià)大。稍一疏忽,就會(huì)導(dǎo)致數(shù)據(jù)庫(kù)中數(shù)據(jù)的不一致。

3.插入異常(InsertionAnomalies):想要插入到表中的數(shù)據(jù)系統(tǒng)不允許插入,如新轉(zhuǎn)來(lái)一個(gè)學(xué)生,該生還沒有選課,因此這個(gè)元組信息就不允許插入,因?yàn)檫`反了實(shí)體完整性規(guī)則。

4.刪除異常(DeletionAnomalies):不想刪除的數(shù)據(jù)卻不得不從數(shù)據(jù)庫(kù)中刪除,如數(shù)學(xué)系的學(xué)生王五退學(xué)了,在刪除王五信息的同時(shí),也把該院系的系主任信息刪除掉了,可是系主任信息只取決于院系,跟具體的學(xué)生沒有關(guān)系。

三、優(yōu)化方法

為了解決上述表中出現(xiàn)的各種問(wèn)題,把一個(gè)“不好”的關(guān)系模式變成一個(gè)x性質(zhì)“好”的關(guān)系模式??梢酝ㄟ^(guò)模式分解的方法來(lái)實(shí)現(xiàn)。把低級(jí)別的關(guān)系模式通過(guò)簡(jiǎn)單的分解,逐步去除其中的冗余和異?,F(xiàn)象,轉(zhuǎn)換為若干個(gè)高一級(jí)范式的關(guān)系模式集合,這個(gè)過(guò)程就叫關(guān)系模式的規(guī)范化。關(guān)系數(shù)據(jù)庫(kù)模式優(yōu)化就是以規(guī)范化理論為基礎(chǔ),通過(guò)分析關(guān)系模式中屬性和屬性之間的函數(shù)依賴關(guān)系,按照一定的標(biāo)準(zhǔn)把一個(gè)大的關(guān)系模式進(jìn)行分解,生成一些小的子關(guān)系模式,目的是通過(guò)破壞不合理的函數(shù)依賴,解決關(guān)系模式中存在的各種異常問(wèn)題

(一)函數(shù)依賴基本概念

設(shè)R(U)是一個(gè)屬性集U上的關(guān)系模式,W和Z是U的子集。若對(duì)于R(U)的任意一個(gè)可能的關(guān)系r,r中不可能存在兩個(gè)元組在W上的屬性值相等,而在Z上的屬性值不等,則稱“W函數(shù)確定Z”或“Z函數(shù)依賴于W”,記作W→Z。也就是說(shuō),對(duì)t,s∈r,若t[W]=s[W],則t[Z]=s[Z]那么稱“W函數(shù)決定Z”,或“Z函數(shù)依賴于W”。需要說(shuō)明的是,函數(shù)依賴是一個(gè)語(yǔ)義范疇的概念,而且函數(shù)依賴也不是指關(guān)系模式R的某個(gè)或某些關(guān)系實(shí)例滿足的約束條件,而是指R的所有關(guān)系實(shí)例均要滿足的約束條件。

(二)范式基本概念

范式是符合某一種級(jí)別的關(guān)系模式的集合。關(guān)系數(shù)據(jù)庫(kù)中的關(guān)系必須滿足一定的要求,滿足不同程度要求的為不同范式。各種范式之間存在聯(lián)系:1NF2NF3NFBCNF4NF5NF某一關(guān)系模式R為第n范式,可簡(jiǎn)記為R∈nNF。1.1NF:第一范式要求關(guān)系中的所有分量都必須是不可再分的原子項(xiàng)。1NF是每個(gè)關(guān)系數(shù)據(jù)庫(kù)中的關(guān)系模式都應(yīng)滿足的最低要求,也就是說(shuō)如果一個(gè)關(guān)系模式不滿足第一范式,那么它就不能稱之為是關(guān)系數(shù)據(jù)庫(kù)。如圖1所示的關(guān)系模式就不滿足1NF,也就是不允許在一張表中又出現(xiàn)小表。2.2NF:若R∈1NF,且每一個(gè)非主屬性完全函數(shù)依賴于碼,則R∈2NF。3.3NF:關(guān)系模式R<U,F(xiàn)>中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z不是Y的子集),使得X→Y,Y→Z成立,Y→X,則稱R<U,F(xiàn)>∈3NF。4.BCNF:設(shè)關(guān)系模式R<U,F(xiàn)>∈1NF,如果對(duì)于R的每個(gè)函數(shù)依賴X→Y,若Y不屬于X,則X必含有候選碼,那么R∈BCNF。5.4NF:若關(guān)系模式R中的每個(gè)非平凡多值依賴X→Y(YX),X都含有碼,則R∈4NF。6.5NF:若R∈4NF,且不存在連接依賴,則R∈5NF。

(三)優(yōu)化的方法

規(guī)范的關(guān)系模式可保證關(guān)系中消除數(shù)據(jù)冗余、消除插入困難、消除修改困難。關(guān)系模式優(yōu)化的基本思想就是逐步消除數(shù)據(jù)依賴中不合適的部分,使模式中的各關(guān)系模式達(dá)到某種程度的”分離”。其基本步驟如圖2所示。

(四)優(yōu)化實(shí)例

有關(guān)系模式學(xué)生(學(xué)號(hào),課號(hào),姓名,性別,系號(hào),課名,成績(jī),系主任,樓號(hào)),其中各個(gè)屬性之間的函數(shù)依賴如圖3所示。1.消除部分依賴,得到滿足2NF的關(guān)系模式:Student(學(xué)號(hào),姓名,性別,系號(hào),系主任,樓號(hào))Sc(學(xué)號(hào),課號(hào),成績(jī))Course(課號(hào),課名)2.消除傳遞依賴,得到滿足3NF的關(guān)系模式:Student(學(xué)號(hào),姓名,性別,系號(hào))Deparment(系號(hào),系主任,樓號(hào))Sc(學(xué)號(hào),課號(hào),成績(jī))Course(課號(hào),課名)

四、結(jié)論

規(guī)范化首先要保證關(guān)系中所有屬性都是原子項(xiàng),也就是在保證其滿足1NF的基礎(chǔ)上,如果關(guān)系的碼是由單屬性組成,則這個(gè)關(guān)系模式必然滿足2NF,否則消除部分函數(shù)依賴可得2NF關(guān)系;如果一個(gè)關(guān)系模式中所有屬性都是主屬性,則這個(gè)關(guān)系模式必然滿足3NF。如果有非主屬性存在,則還需要判斷是否對(duì)候選碼有傳遞函數(shù)依賴,如果有就消除之可得3NF關(guān)系;依此類推。直到消除了操作異?,F(xiàn)象。

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表