Задавайте вопросы, мы ответим
Вы не зашли.
нужно сделать контр. работу.
База данных тестирование школьников.
В базе должна содержится информация:
* Фамилия учащегося
* номер школы
* класс
* Фамилия преподавателя
* сведения о 12 заданиях
* За каждое задание должна быть проставлена оценка (1, 0.66, 0.33, 0 ).
Нужно нормализовать таблицы до 3нф
то что у меня получилось !!
Неактивен
Эээ... 0.66 Вам за эту картинку. В смысле 4+
Потому что число 0.66 в INT не поместится. В остальном, вроде, замечательно
Неактивен
ой точно.
ну это ладно исправим
меня больше интересует сущность преподаватель
мб просто сделать его как поле в студенте
и так же поля номер школы и класс в студенте
Неактивен
вроде бы разобрался
для 3нф достаточно:
СТУДЕНТ (ид_студента, фамилия, номер школы, класс, фамилия_препода)
ЗАДАЧА (ид_задачи, инфо о задаче)
ОЦЕНКА_ЗА_ЗАДАЧУ( ид_студента, ид_задачи, оценка)
Если я буду выделять в сущности такие поля как номер школы, класс, фамилия препода, я буду устранять многофункциональную зависимость, это уже для 4нф.
Поправьте если не так
Неактивен
Ну, если уж совсем придираться к словам, то 4НФ содержит в себе 3НФ
И, если будете делать 4НФ, то не забудьте, что школа от id преподавателя
тоже неплохо зависит
Неактивен
да нет 4нф мне не надо
ну вот о5 запутался.
школа зависит от преподавателя
или все таки преподавать можно в разных школах
если он зависит то его необходимо исключить для 3нф ???
Отредактированно refoxt (11.01.2010 19:31:34)
Неактивен
Раз стали говорит о высших формах, то класс зависит от номера школы. Теоретически, чтобы достигнуть высшей нормализации надо вводить отдельно таблицу преподов, отдельно таблицу классов и отдельно таблицу групп (в каждом классе может быть несколько групп и ведут в них разные преподы). Зависимость можно понимать более широко, не как y = f(x), а как наличие ограничений на значения в таблице. Если я не могу произвольно задавать значения различных колонок, то это уже не полностью нормальная форма. Например, Иванов преподает в школах 12 и 19, но не преподает в школе 47. Я не могу вставить запись "Иванов", "47" в таблицу об оценках. Получается зависимость между неключевыми колонками, пусть не функциональная.
На практике, как вы уже поняли, высшие нормальные формы практикуются редко и логично, что в задании требовалась третья. В конкретной случае вам дали задачу, вы сделали таблицу и это уже дело десятое кто где преподает. Но надо отдавать себе отчет, что из-за опечаток при вводе данных будут неконсистентные строки, содержащие класс, которого нет в данной школе и.т.д.; если видели списки после вступительного экзамена, там таких нестыковок масса. Здесь мы учитываем, что информация о школе и преподавателе не очень критична и ошибка в ней не будет фатальной и забиваем на это, чтобы чрезмерно не усложнять эксплуатацию базы.
Неактивен
хм норм ответил
ладно понял что таблицы в 3нф и больше ничего не требуется
Неактивен