私は第2正規形でグレード欄で何をすべきか

シャヒードZikria:

私は私のテーブルを正規化するためにこの問題を解決しようとしたが、grade.Thereが、そのことについて曖昧である列で混乱し、あなたはそれで私は何をすべきヒントを定義することができます

STUDENT (Student_number, 
         student_name, 
         number_credit, 
         professor_number, 
         professor_name, 
         Course_code, 
         Course_name, 
         **GRADE**)

第二及び第三正規形でか。私がように、第2に正規化します

STUDENT_NAME (Student_number, student_name)
Professor (professor_number, professor_name)
COURSE (Course_code, Course_name, number_credit)

今、私は何をすべきグレードこのテイク場所または私は新しいテーブルを作るべきテーブルの列?

B.モンテイロ:

あなたの関係を考慮すると

STUDENT (Student_number, student_name, number_credit, professor_number, professor_name, Course_code, Course_name, GRADE)

他のカラム(属性)についてのあなたの答えが正しいです。

STUDENT_NAME (Student_number, student_name) Professor (professor_number, professor_name)
COURSE (Course_code, Course_name, number_credit)

私にとっては、およそこの関数従属性がありGRADE

{Student_number, Course_code} -> Grade

だから、それは別のリレーションを作成する必要があります:

GRADES (Student_number, Course_code, Grade)
with the two firsts columns compound the primary key

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=373392&siteId=1