私は現在、コースに学生の出席を格納する2つのテーブルを持っています。私は、生徒の総出席を記憶するhub_attendanceテーブルと、生徒が持っている、または出席していない各レッスンの出席を格納するhub_attendance_lessonテーブルを持っています。私はこれが正しいか、何か間違っているかどうか分からない、私はデータベースの初心者だ!このデータベーススキーマをより良くするにはどうすればよいですか?
hub_attendance:
id
student_id
course_id
total_lessons
total_lessons_so_far
total_attended
total_absent
total_excused_absent
total_late
total_excused_late
hub_attendance_lesson:
id
lesson_id
course_id
student_id
date
attended
absent
excused_absent
late
excused_late
EDIT:
だから私は完全に最初のテーブルの脱却きたし、これが私の新しい単一のテーブルです。
Hub_Attendance:
id
lesson_id
course_id
student_id
date
attendance
あなたはどのように出席を決めていますか?レッスンごとまたはレッスングループごとに?あなたが直面している実際の状況の詳細は、デザインの問題をより明確にするでしょう。 –
ねえ、私はあなたが授業のグループで何を意味するのか分かりません? –
1回の出席には複数のレッスンが含まれていますか?データベース設計では、ユニークなデータレコードが何であるか、およびそれらの間の関係について検討しています。あなたが単一の学生コースの登録をしている場合、それは様々なコンポーネントレッスンで多くの出席者を持つでしょう、これは、包括的な登録がなく、あなたが数える必要がある出席がたくさんあることとは異なります。違いは、それ以外の場合は出席テーブルに繰り返される登録に関するデータを保存する必要があるかどうかです。登録開始日。 –