Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: БД Aссess: 3 НФ  (Прочитано 12069 раз)
0 Пользователей и 1 Гость смотрят эту тему.
СвоЕобразнаЯ
Участник

ru
Offline Offline

« : 14-11-2010 11:41 » 

Всем привет! Что, съел?
Предметная область БД "Ресторан". Подскажите, соответствует ли она 3 НФ? Что нужно сделать чтобы БД соответствовала 3 НФ? Да-да
З.Ы.: заранее большое спасибо за ответы "садиться за учебники", "погуглить" и т.п.))))

* shema.png (101.43 Кб - загружено 1005 раз.)
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 14-11-2010 11:45 » 

СвоЕобразнаЯ, в этих статьях описываются нормализованные формы БД:
https://club.shelek.ru/viewart.php?id=177
https://club.shelek.ru/viewart.php?id=311
Проверь свою БД.

Выдержка:

1 НФ:
    * Каждый столбец в строке должен быть атомарным, т.е. столбец может содержать одно и только одно значение для заданной строки.
    * Каждая строка в таблице обязана содержать одинаковое количество столбцов. Учитывая обязательную атомарность столбцов, следует, что все строки в таблице должны иметь одинаковое количество значений.
    * Все строки в таблице, в общем, должны быть уникальны. Значения в столбцах могут дублироваться, но строки, взятые целиком — не могут.

2 НФ:
Все столбцы, не входящие в полный первичный ключ, должны зависеть от полного первичного ключа.

3 НФ:
Все столбцы, не входящие в полный первичный ключ, должны зависеть от него и не должны зависеть друг от друга.
« Последнее редактирование: 14-11-2010 11:47 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
СвоЕобразнаЯ
Участник

ru
Offline Offline

« Ответ #2 : 14-11-2010 12:23 » 

Спасибо! Улыбаюсь
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 14-11-2010 12:31 » 

Не согласен с наименованиями некоторых столбцов: в разных таблицах ты их называешь по разному? Это приводит к запутыванию. Например:
* NumStolik и Stolik
* IDPostavka и NumPostavka

То префикс Num, то префикс ID - определись и выбери что-то одно.
ArtikulIngred тоже следовало бы с префиксом ID сделать.

Шифр должности вообще не к тому ключу подключен.

Ошибок масса. Сперва исправь их, а потом уже нормализацию проверяй.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
СвоЕобразнаЯ
Участник

ru
Offline Offline

« Ответ #4 : 14-11-2010 12:32 » 

Да вроде преподаватель проверял вчера эту схему и ничего такого не сказал... Сказал тока довести до 3 НФ.
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 14-11-2010 12:33 » 

Плохо проверял. Точнее, не проверял, а проглядел.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
СвоЕобразнаЯ
Участник

ru
Offline Offline

« Ответ #6 : 14-11-2010 12:38 » 

ID и Num и Artikul исправила, теперь только ID используется. Но почему шифр должности не туда подключён? Нужно в таблице служащий сделать шифр должности, так что ли? И это будет правильнее?
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #7 : 14-11-2010 12:42 » 

Смотри сама:





* shifr_dolzhnosti.png (15.96 Кб - загружено 1783 раз.)
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
СвоЕобразнаЯ
Участник

ru
Offline Offline

« Ответ #8 : 14-11-2010 13:20 » 

Исправила:) Теперь БД соответствует 3 НФ?
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 14-11-2010 13:29 » 

СвоЕобразнаЯ, а я то откуда знаю? Ты не показываешь текущее состояние. Сама то ты проверяешь?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #10 : 14-11-2010 13:57 » 

RXL, ага, разбежалась она Улыбаюсь

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

Посещение без бронирования места вообще невозможно.

Ну и то, что RXL написал: опечатки, направления связей и т.п.

СвоЕобразнаЯ, "неуд.", короче.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
СвоЕобразнаЯ
Участник

ru
Offline Offline

« Ответ #11 : 15-11-2010 15:50 » new

Всем спасибо за отклики! Улыбаюсь
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines