Bagaimana untuk menggunakan MySQL untuk mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian?
Apabila mereka bentuk pangkalan data untuk sistem peperiksaan dalam talian, kami perlu membuat beberapa jadual untuk menyimpan maklumat berkaitan peperiksaan, seperti soalan peperiksaan, jawapan, markah, dsb. Dalam MySQL, kita boleh mencapai ini dengan mentakrifkan struktur jadual.
Pertama, kita perlu membuat jadual untuk menyimpan soalan peperiksaan. Diandaikan bahawa setiap soalan mempunyai ID soalan yang unik, jenis soalan, kandungan, pilihan dan jawapan yang betul, dsb. Kita boleh menggunakan kod berikut untuk mencipta jadual:
CREATE TABLE IF NOT EXISTS `exam_questions` ( `question_id` INT(11) NOT NULL AUTO_INCREMENT, `question_type` VARCHAR(255) NOT NULL, `question_text` TEXT NOT NULL, `option_a` VARCHAR(255) NOT NULL, `option_b` VARCHAR(255) NOT NULL, `option_c` VARCHAR(255) NOT NULL, `option_d` VARCHAR(255) NOT NULL, `correct_answer` VARCHAR(255) NOT NULL, PRIMARY KEY (`question_id`) ) ENGINE=InnoDB;
Seterusnya, kita perlu mencipta jadual untuk menyimpan jawapan calon. Andaikan bahawa setiap calon mempunyai ID unik, yang sepadan dengan ID soalan peperiksaan dan jawapannya diwakili oleh rentetan. Kita boleh menggunakan kod berikut untuk mencipta jadual:
CREATE TABLE IF NOT EXISTS `exam_answers` ( `student_id` INT(11) NOT NULL, `question_id` INT(11) NOT NULL, `answer` VARCHAR(255) NOT NULL, PRIMARY KEY (`student_id`, `question_id`), FOREIGN KEY (`question_id`) REFERENCES `exam_questions` (`question_id`) ) ENGINE=InnoDB;
Seterusnya, kita perlu mencipta jadual untuk menyimpan markah ujian. Andaikan bahawa setiap calon mempunyai ID unik, dan skor ujian diwakili oleh nombor titik terapung. Kita boleh menggunakan kod berikut untuk mencipta jadual:
CREATE TABLE IF NOT EXISTS `exam_scores` ( `student_id` INT(11) NOT NULL, `score` FLOAT NOT NULL, PRIMARY KEY (`student_id`), FOREIGN KEY (`student_id`) REFERENCES `exam_answers` (`student_id`) ) ENGINE=InnoDB;
Akhir sekali, kita perlu mencipta jadual untuk menyimpan rekod peperiksaan. Andaikan bahawa setiap calon mempunyai ID unik, dan masa mula dan tamat peperiksaan masing-masing diwakili oleh cap masa. Kita boleh menggunakan kod berikut untuk mencipta jadual:
CREATE TABLE IF NOT EXISTS `exam_records` ( `student_id` INT(11) NOT NULL, `start_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `end_time` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00', `duration` INT(11) NOT NULL, PRIMARY KEY (`student_id`), FOREIGN KEY (`student_id`) REFERENCES `exam_scores` (`student_id`) ) ENGINE=InnoDB;
Dengan kod di atas, kami telah berjaya mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian. Sudah tentu, dalam pembangunan sebenar, kita mungkin perlu menyesuaikan dan mengembangkan struktur jadual mengikut keperluan tertentu. Saya harap artikel ini akan membantu anda memahami cara menggunakan MySQL untuk mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan MySQL untuk mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!