當前位置:首頁 » 操作系統 » 資料庫關系分解

資料庫關系分解

發布時間: 2024-10-19 20:03:30

資料庫系統系統原理,關系模式方面問題

Q1:問第三題具體是該如何實現的?

A1:第三題可採用保持函數依賴的分解演算法

Q2:第三題問題將R分解成等價的3NF,是不是說R分解出來的所有關系模式都必須是3NF的?

A2:可以說模式分解後的關系模式一定是3NF的,其中:

1.保持函數依賴的分解一定是3NF,但不一定是BCNF。

2.既保持函數依賴又有無損連接性的分解一定是3NF,但不一定是BCNF。

3.具有無損連接性的分解,一定可達到4NF。

Q3:第一範式,第二範式都能理解,那麼第三範式是在第二範式的基礎上,增加了什麼條件?

A3:第三範式是在第一模式的基礎上,消除了每一個非主屬性與碼的傳遞依賴,比如X→Y,Y→Z,這里就是Z傳遞依賴於X。

Q4:以R1(Sno, Cno, G)為例,由於(Sno,Cno)-->G,但是並不能確定G就一定不能決定(Sno,Cno),所以R1就是第三範式。這樣理解對不對?

A4:以R1(Sno, Cno, G)為例,由於(Sno,Cno)-->G,這里只有(Sno,Cno)決定G這一個函數依賴,此例G完全依賴於(Sno,Cno),並不存在傳遞依賴,決定因素也只有碼(Sno,Cno)一個,所以R1是BCNF範式,自然也是第三範式。(ps:4NF多值依賴這一塊我還在理解,如果僅僅R(Sno,Cno,G),F={(Sno,Cno)-->G}這個條件的話我認為是屬於4NF的,等我理解了再來補答~)

㈡ 資料庫 分解成3NF範式

1:
R((職工號,日期)->日營業額,職工號->部門名,部門名->經理)
候選碼:職工號,日期,部門名
2,因為R集合中存在傳遞函數依賴,會產生冗餘數據,所以不是3NF
3NF如下:
R1(職工號,日期,日營業額)
R2(職工號,部門名)
R3(部門名,部門經理)

㈢ 資料庫 關系模式 BC → D, C → AF, AB → CE 如何分解成BCNF

我們先來推斷一下碼;
c->af====>c->a,c->f
ab->ce===>ab->c,ab->e
這樣我們得到:ab->a,ab->c,ab->f,ab->e
又因為
bc->d,ab->c
我們是不是能得到ab->d呢,答案是肯定的。所以呢ab作為碼就可以了。
根據BCNF定義,可分為:
R1 {A,B,C,E}
R1 {A,B,D,F},如果不對,歡迎指正。

熱點內容
班雲伺服器軟體 發布:2024-10-19 22:15:26 瀏覽:527
mc紅石伺服器地址介紹 發布:2024-10-19 22:09:00 瀏覽:163
下載手機JAVA通用版 發布:2024-10-19 22:00:50 瀏覽:878
linux的串口編程 發布:2024-10-19 21:59:04 瀏覽:59
醫用棉球存儲 發布:2024-10-19 21:44:44 瀏覽:627
安卓手機上的耳機在哪裡 發布:2024-10-19 21:41:26 瀏覽:948
經典網路雲伺服器 發布:2024-10-19 21:41:26 瀏覽:974
兒童編程教育學校 發布:2024-10-19 21:40:36 瀏覽:122
如何用系統u盤更改密碼 發布:2024-10-19 21:39:04 瀏覽:203
c語言程序總是從的函數開始執行 發布:2024-10-19 21:38:23 瀏覽:37