私はこのようなテーブルを設計しました:
table1: 学生 ---------------------- PK ID 名前 番号 ... ---------------------- table2: students_score ---------------------- PK FK Student_id math_score 英語スコア ... ----------------------
質問1
一部の生徒がまったく点数をとっていない場合、それは良いテーブル設計ですか?
質問2
良い設計であれば、MySQL で FK を PK として作成するにはどうすればよいですか? 方法がわかりません。上記のようなリレーションを作成しようとするたびに、SQLYog は次のエラーを表示します。Can't create table 'students.#sql-a31_2c8e' (errno: 150)
ありがとう
アップデート
ここから質問2 の答えを見つけました。これは型(int, signed int)の問題でした。