Bagaimana untuk menggunakan MySQL untuk mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian?

WBOY
Lepaskan: 2023-10-31 08:38:30
asal
1180 orang telah melayarinya

Bagaimana untuk menggunakan MySQL untuk mencipta struktur jadual yang sesuai untuk sistem peperiksaan dalam talian?

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;
Salin selepas log masuk

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;
Salin selepas log masuk

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;
Salin selepas log masuk

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;
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan