Способ хранения ответов студентов на задания - MySQL

Узнай цену своей работы

Формулировка задачи:

Разрабатывается тренажер по "дисциплине управление" данными. Столкнулся с проблемой хранения ответов студентов. В дальнейшем для просмотра результатов нужно студенту предоставлять краткую информацию, а преподавателю - подробную по каждому заданию. Имеются таблицы "Эталон" со структурой: "ID_qw", "тема", "Задание", "правильный ответ"; таблица "студенты": "ФИО", "Номер группы", "ID_st", "логин", "пароль". А вот с таблицей ответов у меня проблема.. хотел сделать такого вида "Дата выполнения", "номер задания" (блок из N заданий), "ID_QW" - номер вопроса как эталоне, "правильный ответ", и дальше "ответ студента 1", 2, 3 и так далее до последнего студента. Однако, получается весьма громадная таблица. Даже если 100 студентов и 20 блоков по 10 заданий.. Как можно упростить таблицы? Если бы не подробный отчет по каждому заданию - у меня даже вопросов бы не возникало.. а тут..

Решение задачи: «Способ хранения ответов студентов на задания»

textual
Листинг программы
SELECT `logs`.`id`, `logs`.`date`, `logs`. `ID_QW`, `logs`.`ST_id`, `logs`.`ST_answer` FROM `logs`,`ref_task`
WHERE `logs`.`ST_answer` = `ref_task`.`Answer`

Объяснение кода листинга программы

В данном коде выполняется запрос к базе данных, который предназначен для выбора определенных данных из двух таблиц: logs и ref_task. Список действий, которые выполняются в этом коде, можно описать следующим образом:

  1. SELECT - выбор данных из таблицы.
  2. logs.id, logs.date, logs. ID_QW, logs.ST_id, logs.ST_answer - перечисление столбцов, которые необходимо выбрать из таблицы logs.
  3. FROM logs,ref_task - указание таблиц, из которых необходимо выбрать данные.
  4. WHERE logs.ST_answer = ref_task.Answer - условие, которое ограничивает выборку данных из таблицы logs и ref_task таким образом, чтобы выбирались только те строки, в которых значение столбца ST_answer в таблице logs совпадает с значением столбца Answer в таблице ref_task.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.364 из 5
Похожие ответы