Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Базы данных MySQL

  Все выпуски  

RFpro.ru: Базы данных SQL


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

_Ayl_
Статус: Студент
Рейтинг: 886
∙ повысить рейтинг >>
Чичерин Вадим Викторович
Статус: 10-й класс
Рейтинг: 306
∙ повысить рейтинг >>
leonid59
Статус: 5-й класс
Рейтинг: 212
∙ повысить рейтинг >>

∙ / КОМПЬЮТЕРЫ И ПО / Языки программирования / Базы данных SQL

Выпуск № 434 от 25.07.2009, 15:05
Администратор рассылки: Victor Pyrlik, Модератор
В рассылке: подписчиков - 595, экспертов - 167
В номере: вопросов - 1, ответов - 3

Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке:
оценить выпуск >>

Вопрос № 170616: Добрый день. Решил сделать программу по проведению тестов, вопрос возник в реализации базы вопросов. есть 5 типов вопросов, каждый тип хранится в отдельной таблице. Есть ли смысл разделять эти таблицы ещё на таблицы по предметам? То есть делать на ка...



Вопрос № 170616:

Добрый день. Решил сделать программу по проведению тестов, вопрос возник в реализации базы вопросов. есть 5 типов вопросов, каждый тип хранится в отдельной таблице. Есть ли смысл разделять эти таблицы ещё на таблицы по предметам? То есть делать на каждый предмет по 5 таблиц, или проще так и оставить 5 таблиц всего? Заранее спасибо. Надеюсь сделать на этой программе диплом, и применять её дальше, то есть интересует прикладной аспект. СУБД MySQL 5. Язык программирования С++. Спасибо всем кто откликнется.

Отправлен: 20.07.2009, 14:42
Вопрос задал: Сердюков Павел, Посетитель
Всего ответов: 3
Страница вопроса >>


Отвечает _Ayl_, Студент :
Здравствуйте, Сердюков Павел.

Я бы оставил разделение только по 5-ти типам. Насколько я понял, данные типы вопросов между собой несовместимы (требуют разной обработки).
Ну а для предметов разницы нет, нужен только признак принадлежности вопроса определенному предмету.
Не забудьте только проиндексировать поле "Предмет".

Ответ отправил: _Ayl_, Студент
Ответ отправлен: 20.07.2009, 15:17

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 252375 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!
    Отвечает Santana, Студент :
    Здравствуйте, Сердюков Павел.
    Я бы советовал сделать одну таблицу. Только добавить два поля: код предмета и код типа. Так говорит заратустра по имени теория реляционных баз данных

    Ответ отправил: Santana, Студент
    Ответ отправлен: 20.07.2009, 16:04

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 252377 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!
    Отвечает leonid59, 5-й класс :
    Здравствуйте, Сердюков Павел.

    1. Прежде всего необходимо отметить, что сам вопрос несколько поспешен,
    нужно детальное описание бизнес-процесса, в том числе используемых объектов.
    Количество таблиц - следствие общей стратегии.

    2. Ответ на Ваш вопрос в общем виде я бы сформулировал так:
    а) таблиц должно быть не меньше, чем описываемых классов объектов. Больше - наверняка.
    К примеру, Вам захочется знать, кто, когда и каким образом редактировал вопросы.
    Кто и как отвечал на них. Если это обучающая система, вопросы должны быть как-то связаны.
    Все это привносит дополнительные таблицы.
    б) должен быть использован принцип разумной достаточности.
    При очень сильной нормализации теряется скорость при запросах
    к связанным таблицам,при недостаточной - дублирование и проблемы
    целостности.
    Рассмотрим нашу модель тестов. В любом случае у Вас есть классы и,
    соответственно, таблицы:
    Предмет (id, Название);
    Вопрос(id, Текст, idПр едмета,..., idТипаВопроса)
    Допустим, есть вопросы, содержащие картинки (тип 1).
    Есть вопросы, где нужно сделать выбор из нескольких ответов. (тип 2).
    Есть вопросы, где нужно по формуле записать ответ (тип 3).
    Эти типы (классы) являются наследниками от класса "Вопрос".
    Появляется таблица "Типы вопросов" (id, Название, Описание)
    Например, для вопросов с картинками можно указать имя файла картинки.
    Появляется таблица "ВопросыСКартинкой" (id, idВопроса, ИмяФайла)
    ..
    Каждый вопрос может относиться к некоему предмету или, точнее, предметной области.
    Каждый вопрос может относиться к некоторому уровню, как, например, в RFPRO.RU

    3. Бизнес-логика, как правило, описывается в триггерах и хранимых процедурах.
    одними таблицами не обойдешься.

    4. Для квалифицированной работы с базами данных необходимо изучать специальную
    литературу, и первой книгой я посоветовал бы Мартина Грубера "Понимание SQL"< br>
    В любом случае, чтобы более компетентно ответить на Ваш вопрос, необходимо более пространное объяснение, того что будет представлять собой Ваша тест-система.

    Ответ отправил: leonid59, 5-й класс
    Ответ отправлен: 20.07.2009, 23:27

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 252403 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке:
    оценить выпуск >>

    подать вопрос экспертам этой рассылки >>

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров >>

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.5 от 08.07.2009

    В избранное