Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Базы данных] [Foxpro/Clipper/Dbase] БД - 3 нормальная форма. Помогите разобраться со структурой БД 
:(
    Опции темы
Ipnet
  Дата 23.6.2010, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



Здравствуйте. Помогите пожалуйста разобраться с тем что из себя представляет БД в 3 нормальной форме. До пятницы нужно сделать курсовик, а я мало что знаю в проектировании БД.

Вообщем нужно разработать в Visual FoxPro 6 реляционную БД в 3 нормальной форме, содержащую примерно 5-10 таблиц. Название базы данных "Сплит-системы". Какую структуру можно придумать по данной теме? некоторые таблицы я придумал - "Сплит системы(товар)", "Производители", "Сервисные центры", "Поставщик","Покупатель","Установщик".  Подскажите как связать эти таблицы, по каким индексам и как установить правильно эти самые индексы(с индексами я не могу разобраться). 

Я мог бы сам во всем этом разобраться и не тревожить Вас, но очень очень мало времени чтобы читать кучу литературы. Помогите пожалуйста!
Заранее спасибо.


Ув. модератторы , если я вдруг поместил тему не в том месте, извините пожалуйста.

Добавлено через 6 минут и 12 секунд
Подсказывайте пожалуйста кто что знает, я по ходу буду разбираться smile 

Это сообщение отредактировал(а) Ipnet - 23.6.2010, 22:41
PM MAIL   Вверх
Ipnet
  Дата 24.6.2010, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



user posted image

Вот вообщем схема таблиц  БД. Помогите привести ее к 3 н.ф. и объясните пожалуйста какие установить индексы и как связать, чтобы получилась хоть немного функциональная БД.  

Очень нужно разобраться и сделать проект до утра пятницы. Помогите кто чем может пожалуйста. 

Это сообщение отредактировал(а) Ipnet - 24.6.2010, 00:17
PM MAIL   Вверх
MoLeX
Дата 24.6.2010, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: нет
Всего: 140



Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Ipnet
Дата 24.6.2010, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



Up
PM MAIL   Вверх
Данкинг
Дата 24.6.2010, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(Ipnet @  24.6.2010,  01:14 Найти цитируемый пост)
как связать

Читай фоксовую справку по команде "Set relation to".


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Ipnet
Дата 24.6.2010, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



мне именно нужно знать как связать, чтобы все было в 3 форме
PM MAIL   Вверх
Ipnet
Дата 24.6.2010, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



Вроде бы немного разобрался в своей проблеме. Но хочу удостовериться в правильности приобретенных знаний. Можете мне объяснить суть третьей нормальной формы так сказать "на пальцах" ?
Заранее спасибо.
PM MAIL   Вверх
world
Дата 26.6.2010, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 2.10.2009
Где: Харьков

Репутация: 6
Всего: 12



Если ещё актуально. Разберём всё это на пальцах начиная с первой нормальной формы (1НФ):

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

Отношение находится во 2НФ если:
- оно находится в 1НФ
- отношение функционально полно зависит от первичного ключа, т.е. все атрибуты зависят от ВСЕГО ключа, а НЕ от какой-либо ЧАСТИ. Если в таблице присутствует не составной первичный ключ, то таблица находится во 2НФ на 100%. Если ключ составной - необходимо делать проверку на функциональную полноту зависимостей.

Теперь самое главное. Отношение находится в 3НФ если:
- оно находится во 2НФ
- в отношение отсутствуют транзитивные зависимости. Т.е. не один атрибут таблицы не зависит от других, кроме первичного ключа. (Для этого правила допускается исключение если первичный ключ, получается строковой переменной, для ускорения связи таблиц, например таблица содержащая номер паспорта(строковая переменная), может содержать числовой первичный ключ(id), хотя остаётся транзитивная зависимость всех полей от номера паспорта).


--------------------
Say what you mean, and mean what you say. Robert Wilson Cody
PM MAIL WWW ICQ Skype   Вверх
Ipnet
Дата 27.6.2010, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 30.5.2008

Репутация: нет
Всего: нет



world, спасибо за пояснение. Ты мне очень помог! Я удостоверился что все сделал правильно. Поставил бы тебе плюс, но постов мало=(
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0596 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.