0

非常に珍しい質問をしてしまったことをお詫びします。

私はmysqlを使用していて、次のテーブルを持つデータベースを持っています

course
course_subject
subject
student
student_course
department
employee
employee_role
personal_information
attendance
attendance_symbol

テーブル構造

上記のデータベースは相互にリンクされています(リレーショナルデータベース)...出席するまでは問題ありません...学生がコースに登録すると、その特定のコースに関連する科目に自動的に登録されます。

しかし、全体としての出席に関しては、いくつかの問題があります。しかし、最初に、出席について私が想定していることを皆さんに話させてください。これには正しくないかもしれませんが、次のようなものがあります。

    1.学生がコースに登録すると、自動的にその科目に登録されます
    2.各コースには登録学生がいます
    3.学生は毎日登録します

状況にどのように対処するかがわからないようです...毎日生徒の出席をマークするテーブルを作成するのに助けが必要です...マークされたら、別のテーブルが保存される可能性があるか、どのように...助けが必要ですか

と学生は毎日出席します...しかし、出席に関しては、出席テーブルをどこに置くべきかわかりません...出席テーブルをstudent_courseまたはどこにリンクする必要がありますか?

4

1 に答える 1

2

学生が特定の日に科目に出席したかどうかの情報を保存するには、次のようなテーブルが必要です。

Attendance (student_id, subject_id, date)

そして、学生が出席したときに保存します。そうすれば、科目はコースの一部であるため、Student、Subjectだけでなく、student_courseにも関連付けられます。または、subject_idの代わりにcourse_idを保存することもできます。

于 2013-03-10T12:55:00.920 に答える