資料庫正規化的問題,資料庫正規化的問題

2022-12-06 22:16:46 字數 1045 閱讀 4559

1樓:匿名使用者

樓上的回答不對。

「包含在任何乙個候選碼中的屬性稱為主屬性」可以這麼理解:

如果一張表中有多個候選碼,那麼任意乙個候選碼或者幾個候選碼的組合都可以作為主鍵。

你的例子中說了:(sno,cno)組成候選碼。那麼,既然這張表只有乙個候選碼,那麼主鍵只能是:(sno,cno),而不能是單個的sno或cno。

用乙個反例來說明,如果你選擇了sno作為主鍵,那麼下面的資料儲存就會報錯:

20110001 001 87

20110001 002 92

但是,設計時顯然你要求的是能夠儲存,因為上述代表乙個學生兩門不同課程的成績。

2樓:匿名使用者

「任何乙個」是修飾屬性的,也就是候選碼中的任何乙個屬性成為主屬性。

sno和cno任何乙個都是主屬性。

mechess 把概念搞錯了,人家說的是主屬性不是主鍵(碼)。主鍵中的任何乙個屬性都叫主屬性。

3樓:

第乙個我看不懂你的意思,你再說明白點。

第二個,x->y,但y不屬於x(即y不是x的成員),則稱x->y是非平凡函式依賴;若y屬於x,則是平凡函式依賴。

第三個,候選碼就是那些能通過直接->或傳遞->來推出所有屬性的組合,以此題為例子,e->d,但d不能推出g,所以e不是候選碼,而 (d.g)推出了e, (d.g)本身不必推出自己,所以 (d.

g)就是候選碼。

第四個,這個本來就已經是4nf了吧,原因是:不存在部分函式依賴,不存在傳遞函式依賴,不存在非平凡多值依賴,只有兩個簡單的函式依賴,當然是4nf。

第五個,簡單判斷的話,首先得是3nf,再這樣判斷:每乙個決定因素都包含碼。也就是說,->左邊的屬性或屬性組必須是關係的碼。任何乙個非碼都不能擅自推出右邊的屬性。

有不懂的再發資訊我,這些知識是來自於資料庫課本,非離散數學。

*************************===

第一題,我不明白的是反例,不明白反例是什麼意思。

第三題是我錯了,(e,g)也算候選碼。

access資料庫問題,ACCESS資料庫的問題!

給你個可行的試試,可以的話麻煩給個肯定以及最佳,謝謝 首先備份表abc到另乙個新錶中abc bak,然後將abc表匯出為excel 然後將 abc 中 where mac 1100的所有記錄刪除,開啟匯出的excel只保留mac 1100的記錄,然後將mac那一列清空,將第一行的mac列公式寫為 i...

資料庫關係代數小問題,資料庫關係代數問題

1.select sn from s,sc where s.sno sc.sno and sc.g a 2.select sn from s where sno in select sno from sc where eno in select eno from t where en 王平 3.se...

什麼是資料庫,什麼是資料庫?資料庫有什麼用?

資料庫 database 是按照 資料結構來組織 儲存和管理資料的倉庫,它產生於距今六十多年前,隨著 資訊科技和市場的發展,特別是二十世紀九十年代以後,資料管理不再僅僅是儲存和管理資料,而轉變成使用者所需要的各種資料管理的方式。資料庫有很多種 型別,從最簡單的儲存有各種資料的 到能夠進行海量 資料儲...