簡體   English   中英

將表標准化為3NF

[英]Normalization the table to 3NF

將表標准化為3NF后,我很難理解如何表示外鍵。

讓我們以這種方式考慮表:

student(studentid,studentname,courseid,coursename,dateofexam,marks,grade)

我可以找出FD,如下所示:

studentid -> studentname
courseid -> coursename
{student,courseid} -> dateofexam,marks
marks -> grade

現在,我正在嘗試為FD創建具有如下非ket屬性的新表:

marks grade
studentid studentname

現在如何將這些表的外鍵與我的舊桌子student 我對此感到困惑。

提前致謝。

FD實際上向您顯示了如何:

studentid -> studentname
courseid -> coursename
{student,courseid} -> dateofexam,marks
marks -> grade

每行將是一個單獨的表。 其他表中存在的鍵將為fk。 在這種情況下:

{student,courseid} -> dateofexam,marks

那將是studentid,courseid和marks(可能也必須是一個id)

就像這樣

學生(studentid,studentname)

課程(課程編號,課程名稱)

考試(examid,fk_studentid,fk_courseid,dateofam,fk_markid)

分數(markid,等級)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM