資料庫中模式分解的例子?

資料庫中模式分解的例子?使用者6813526217308272020-04-01 02:20:59

1NF ,所有屬性都以完全分解(教師,課程,學生)是1NF,(教師和他教的課程,學生)不是;

2NF,消除非主屬性對候選鍵的的區域性依賴(學生,課程,成績,課程名),課程名只部分依賴於主鍵中的課程,首先是資料冗餘,然後可能更新不一致

3NF,消除非主屬性對候選鍵的的傳遞依賴(課程,教師,住址,手機), 住址和手機對教師有依賴,教師依賴課程,那麼住址要傳遞依賴於課程,會造成資料冗餘,更新丟失教師資訊不一致等情況,就要分解(課程,教師),(教師,住址,手機)

BCNF則消除了任何屬性對候選鍵的傳遞依賴,在3nf的基礎上消除了主屬性間的傳遞依賴關係,

選課表 (教師,課程,學生)都是主屬性,但是學生依賴於課程,課程依賴於教師,學生傳遞依賴於教師,所以應該拆成(教師,課程),(課程,學生)