資料庫系統原理計算總結

2021-10-30 10:25:53 字數 3733 閱讀 8197

3.7已知關係模式r(abc),f=,求f+。

可以直接通過自反律、增廣律、傳遞律加以推廣:

f+=4.6 試分析下列分解是否具有無損聯接和保持函式依賴的特點: (1)設r(abc),f1= 在r上成立,ρ1=。

首先,檢查是否具有無損聯接特點:

第1種解法--演算法4.2:

結果第二行全是a行,因此分解是無損聯接分解。

第2種解法:(定理4.8)

設 r1=ab,r2=ac

r1∩r2=a

r2- r1=b

∵a→b,∴該分解是無損聯接分解。

然後,檢查分解是否保持函式依賴

πr1(f1)=

πr2(f1)=

f1被πr1(f1)所蘊涵,∴所以該分解保持函式依賴。

(2)設r(abc),f2=在r上成立,ρ2=

首先,檢查是否具有無損聯接特點:

第1種解法(略)

第2種解法:(定理4.8)

設 r1=ab,r2=ac

r1∩r2=a

r2- r1=c

∵a→c,∴該分解是無損聯接分解。

然後,檢查分解是否保持函式依賴

πr1(f2)=

πr2(f2)=

∵f1中的b→c沒有被蘊涵,所以該分解沒有保持函式依賴。

(3)設r(abc),f3=,在r上成立,ρ3=.

首先,檢查是否具有無損聯接特點:

第1種解法:

沒有一行全是a行。因此這個分解不具有無損聯接特性。

第2種解法:(定理4.8)

設 r1=ab,r2=bc

r1∩r2=b

r2- r1=c,r1- r2=a

∵b→c,b→a不在f3中 ∴該分解不具有無損聯接特性。

然後,檢查分解是否保持函式依賴

πr1(f3)=

πr2(f3)=

f1被πr1(f3)所蘊涵,所以該分解保持函式依賴。

(4)設r(abc),f4=在r上成立,ρ4=

首先,檢查是否具有無損聯接特點:

第1種解法(略)

第2種解法:(定理4.8)

設 r1=ac,r2=bc

r1(ac)∩r2(bc)=c

r2- r1=b,r1- r2=a

∵c→b,c→a不在f4中 ∴該分解不具有無損聯接特性。

然後,檢查分解是否保持函式依賴

πr1(f2)=

πr2(f2)=

∵f1中的a→b沒有被蘊涵,所以該分解沒有保持函式依賴。

4.7 設r=abcd,r上的函式依賴集f=,r的乙個分解ρ=,求:(1)f在ρ的每個模式上的投影。(2)ρ相對於f是無損聯接分解嗎?(3)ρ保持依賴嗎?

(1)πab(f)=

πac(f)=

πad(f)=

(2)每一行都是a,ρ相對於f是無損聯接分解。

(3)πab(f)∪πac(f)∪πad(f)=,

沒有滿足b→c,d→c函式依賴,

因此ρ相對於f的這個分解不保持函式依賴。

4.8 設r=abcd,r上的f=, 試證明ρ=相對於f不是無損聯接分解。

根據演算法4.2

沒有一行都是a,所以,ρ相對於f不是無損聯接分解。

4.9 設r=abcd,r上的f=,把r分解成bcnf模式集。

(1)若首先把r分解成,試求f在這兩個模式上的投影。

(2)acd和bd是bcnf嗎?如果不是,請進一步分解。

(1)πacd(f)=

πbd(f)=

(2)因為根據bcnf的定義,要求關係模式是第一正規化,且每個屬性都不傳遞依賴於r的侯選鍵。 bcd中(a,d)為候選鍵,可是(a,d)→a, a→c,所以它不是bcnf模式。

它可進一步分解為:,此時ac,dc均為bcnf模式。

bd是bcnf,因為r2(bd)是第一正規化,且每個屬性都不傳遞依賴於d(候選鍵),所以它是bcnf模式。

4.10 設r=abcd,ρ=。f1=;f2=;

(1)如果f1是r上的函式依賴集,此時ρ是無損聯接分解嗎?若不是,試舉出反例。

(2)如果f2是r上的函式依賴集呢?

(1)不是無損聯接。可由演算法4.2判斷或由定理4.8判斷。

根據演算法4.2

結果沒有出現一行全a的情況,所以它不是無損聯接。舉例如下:

設模式r的一關係r為

則有:r1=πab(r)=

r2=πbc(r)=

r3=πcd(r)=

令a=r1r2r3=

r≠a,所以ρ不是無損聯接。

(2)如果f2是r上的函式依賴,則可以判斷,ρ是無損聯接。判斷過程同上。

4.11(1)f= 侯選鍵是(s#,c#)。

(2)在模式r中,tname不完全依賴於鍵(s#,c#),因此需進行分解,可分解為下列兩個關係。

sc= c=

分解後,sc中,grade完全依賴於侯選鍵(s#,c#),在c中,主屬性是c#,tname、taddr均完全依賴於c#。 因此,該分解符合2nf模式。

(3)3nf:若每個關係模式是2nf,則每個非主屬性都不傳遞於r的候選鍵。

按上述已分好的兩個模式,sc中已滿足「每個非主屬性都不傳遞於r的候選鍵」,已是3nf,而在c中, c#→tname,tname→taddr,taddr傳遞依賴於c#,因此還需分成兩個模式:ct(c#,tname), t(tname,tadd)。

分解後,總共有sc=,ct(c#,tname), t(tname,tadd)三個模式。

該分解符合3nf模式。

4.12 d=

d#:部門號, manager_e#:部門領導人員的職工號, e#:

職工號, j#:生產科研專案號phone#:辦公室的**號business:

職工職務sa_history:工資歷史office#:辦公室號area:

辦公室面積,

根據所給資訊,給出下列資料依賴: f=

(假設乙個部門可能有多個辦公室,有多個專案,乙個辦公室只屬於乙個部門,有多部**, 乙個員工只參加乙個專案,乙個專案可能屬於多個部門)

只要保證每個屬性值不可分割,以上正規化即為1nf。候選鍵為(e#,business,phone#)

轉換成2nf關係(消除區域性依賴):

em_dep(e#,d#,manager_e#,office#,area,j#,budget)

對應 f=

history(e#,business,history)

對應 f=

phone(phone#,office#)

對應 f=

轉換成3nf關係(消除非主屬性對侯選鍵的傳遞依賴):

department(d#,manager_e#)

office(office#,area,d#)

emproee(e#,j#,office#)

history(e#,business,history)

phone(phone#,office#)

project(j#,budget)

4.11 試把域表示式轉換成等價的:

(1)漢語查詢句子;(2)關係代數表示式;(3)元組表示式。

(1)漢語查詢句子:選擇r中元組第1分量值與第2分量值互換後仍存在於r中的元組。

(2)關係代數表示式:π1,2(σ1=4∧2=3(r×r));

(3)元組表示式:=

4.12 設有兩個關係r(a,b,c)和s(d,e,f),試把下列關係代數表示式轉換成等價的元組表示式:

(1)πa(r);(2)σb='17'(r);(3)r×s;(4)πa,f(σc=d(r×s))

(1)(2)(3)(4)

資料庫系統原理實習報告

河南工程學院 實習報告 系 部計算機學院 專業電腦科學與技術 班級負責人學號及姓名 成員學號及姓名 年月日資料庫系統原理課程設計指導教師評分表 實習 訓 報告評語 等級評閱人職稱 年月日河南工程學院 實習 訓 報告 實習目的 內容 學習和掌握資料庫原理及sql server 2000 資料庫開發工具...

資料庫系統教案

課題 資料庫系統 第一課時 授課教師 胡曉環 一 教學目標 二 教學重點 難點 重點 資料庫 資料庫管理系統 資料庫應用系統 資料庫系統四個概念 資料庫中表 欄位的概念及字段的資料型別 難點 資料庫系統四個概念,及如何根據生活中的具體事物設計資料庫 三 教學方法與教學手段 採用情景匯入 學案導學 任...

資料庫系統原理實習報告 本科

河南工程學院 實習報告 系 部理學院 專業資訊與計算科學 班級1042 負責人學號及姓名 201011002221 趙元培 成員學號及姓名趙元培 2013年 7月日 資料庫系統原理課程設計指導教師評分表 實習 訓 報告評語 等級評閱人職稱 年月日河南工程學院 實習 訓 報告 實習目的 內容 學習和掌...