|
|
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Диплом горит, а я так и не допер что за 1НФ, 2НФ, 3НФ, НФ Бойса-Кодда? А описано все это на таком языке что мозги плавятся уже. Может кто-нибудь на примитивных примерчиках это объяснить? Вот например таблица "Места в астобусе" там есть внешние ключи к таблицам "Автобусы" и "Тип места" (мягкое, жесткое и тд). Где тут какая форма? И как получить 1, 2, 3 и форму этого Бойса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 17:42 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Погляди здесь: http://belani.narod.ru/1/Lnorm.htm#Нормализация%20схем%20баз%20данных Есть даже примеры ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 18:31 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Не, это не то, хреновые там какие-то примеры, не понятно ничего. На моем примере можно как-то показать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 19:13 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
можно глянуть здесь. вдруг поможет... http://sanalis.ru/wiki/?wakka=BazyDannyx/Opredelenija&v=uih#h20-4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 19:33 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Кста "Автобусы" и "Места в астобусе" лучше заменить на "Автобус" и "Место в астобусе" - иначе звучит так что в каждой строке (кортеже) не про один, а про несколько автобусов. 1 форма - атомарность (не делимость). Атрибут содержит неделимое значение с точки. Если, к примеру, заказчик считает, что у Автобуса есть и номер и марка, но Вы создадите один атрибут "Номер_Марка" и туда засандалите как-нибудь и номер и марку, то отношение не удовлетворяет 1 нормальной форме. Остальные формы связаны с понятием функциональных зависимостей и ключей. 2 форма - отношение уд 2 форме - если каждый не первичный атрибут полностью завист от каждого ключа отношения. Не первичный - значит не входит ни в один ключ. Ключ множество атрибутов значения которых уникальны в отношении и ни одно его собственное подмножество не отвечает этому свойством. атрибут полностью завист от можества атрибутов, если он от них завист, и не зависит ни от какого собственного подмножества этого множества. Например, если бы Вы в отношение "Автобус" добавили атрибут "Место" (а таблицу "Место в автобусе" не создавали, а создав ее Вы как раз нормализовали схему БД), то у Вас значения Мн-ва {"Номер автобуса","Номер места"} были бы уникальными в отношении, а по отдельности ни "Номер автобуса", ни "Номер места" не уникальны - т.е. эта пара ключ. "Марка автобуса" зависит от "Номера автобуса" - не может быть двух марок у одного автобуса. Тем более "Марка" зависит от той пары. Но та пара ключ - "Марка" частично зависит от ключа. "Марка" - ни входит ни в один ключ. Не является первичным. Действительно, много автобусов одинаковой марки имеют одинаковые места в . А номер атобуса и марка имеют много разных мест, т.е. повторяются. На лицо нарушение второй нормальной формы. Разделв эту таблу на две "Автобус" и "Место в астобусе" Вы устранили это нарушение 2 нормальной формы. Форма 3 - отсутсвие транзитивной зависимости не первичных атрибутов ни от одного ключа. Атрибут транзитивно зависит от мн-ва атрибутов, если есть еще оно мн-во атрибутов, такое что данный атрибут зависит от него, само это мн-во зависит от первого, а первое не зависит от этого мн-ва. В пред примере в качестве такого доп мн-ва можно взять мн-во из одноого атрибута "Номер автобуса". Но 3 форма сильнее 2. Т.е. если нарушена 2, то всегда нарушен 3, и наоборот если отношение удовлетворяет 3, то тем более 2. Но 3 может быть нарушена, а 2 - нет. Например, пусть в таблице "Автобус" есть фирма - производитель автобуса. Допустим марка может производиться только на одной фирме, хотя много марок на одной фирме. Тада Фирма завист от Марки. Марка от номера Автобуса. Номер автобуса не зависит от марки - много автобусов одинаковой маки и тока один с данным номером. Без доп инфы Фирма - не первичный атрибут. Не входит ни в один ключ - в этой табле всего один ключ - Номер автобуса, если бы был другой , то Номер автобуса бы зависел от него, а этого пока нет. Нарушена третья нормальная форма. Чтобы устранить это нарушение, нужно создать еще таблу Марка, где были бы Марки и Фирмы. Бойса.отсутствие транзитивной зависимости любого (а не тока не первичного) атрибута от любого ключа. Пример. Пусть есть таблица Марка_Мастерская с атрибутами: Мастерская, Марка, Фирма: И действует правило, в данной Мастерской допускается ремонт только одной марки данной фирмы. Ну такой искусственный пример. Тада Пара {Мастерская, Марка} - ключ, потому что Фирма зависит от Марки и стал быть значения пары уникальны и Фирма транзитивно зависит от этой пары. Но и пара {Мастерская, Фирма} - тоже ключ - не может быть двух марок для этой пары из-за того искусственного правила. Фирма - первичный атрибут (входит в ключ). Нарушена форма Бойса_Кодда, хотя форма 3 не нарушена. Надеюсь, это простое объяснение, на простом языке что-то прояснит начинающему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 21:31 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Спасибо за подробное разжевывание, нихрена не понятно правда, такая бредятина :) Придется вчитываться и дальше мозги плавить. Хоть на примерах теперь погляжу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2005, 22:34 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Почитай это , Глава 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2005, 10:24 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Чай_никДиплом горит, а я так и не допер что за 1НФ, 2НФ, 3НФ, НФ Бойса-Кодда?А потом такие "специалисты" приходят устраиваться на штуку грина ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2005, 14:35 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Кода-то давно на одном собеседовании меня тоже спросили про 1НФ, 2НФ, 3НФ, НФ Бойса-Кодда, я ответил, что настоящий DBA не нуждается в процедурах нормализации, а сразу должен создавать нормализованные таблицы. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2005, 17:20 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
авторОбъясните нормализацию БД на пальцах!!! Типа: Если Вы пытаетесь одну клавишу нажать несколькими пальцами то это нарушение 1НФ. Если записываете код символа нажатой клавиши на пальце вместо клавиши то это нарушение 2НФ :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2005, 17:34 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
>ModelR Браво! Высший пилотаж! (Я не шучу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2005, 08:52 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
есть еще доменно ключевая нормальная форма, если ей удовлетворяет то тогда катят все нормальные формы. звучит просто если все констрайнты можно представить как следствие доменов и ключей - то таблица находится во всех нормальных формах. поищи в инете на эту тему... я через нее диплом защищал ( самый простой способ не нести этот бред про 1-2-3 нф... ) моему препу понравилось :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2005, 12:22 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Slider_spbКода-то давно на одном собеседовании меня тоже спросили про 1НФ, 2НФ, 3НФ, НФ Бойса-Кодда, я ответил, что настоящий DBA не нуждается в процедурах нормализации, а сразу должен создавать нормализованные таблицы. :) В принципе не надо изучать нормализацию для того, чтобы правильно(относительно) проектировать бд. Все и так интуитивно ясно, "тут лишнее, можно вынести в отдельную таблицу, а тут вписать только ключ", но все-равно изучил теорию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 07:48 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Теория нормализации в РМД и является ни чем иным, чем формальным обоснованием здравого смысла и интуиции. Но ни одна другая модель данных не может похвастать тем, что рекомендации по проектированию БД сопровождаются некоторыми формальными критериями. А это большая разница, так как здравый смысл --- он у разных людей разный. А формальные критерии -- это всегда формальные критерии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 09:47 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Dioman самый простой способ не нести этот бред про 1-2-3 нф... Или самый простой, чтобы задали вопросы про 4-5 формы. Например, чтобы продемонстрировать следующее на примере 5 формы: Dioman если ей удовлетворяет то тогда катят все нормальные формы Тем более что, не все формы катят, а тока из наиболее известной линейки. Так как есть в принципе формы, котрые могут не катить уже при форме Бойса-Кодда. Хотя такие же редко упоминаемые как и доменно ключевая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 10:08 |
|
||
|
Объясните нормализацию БД на пальцах!!!
|
|||
|---|---|---|---|
|
#18+
Slider_spbПочитай это , Глава 4. Слайдер, огромное спасибо за шикарную ссылку! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2005, 11:22 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33450104&tid=1545494]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
185ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 555ms |

| 0 / 0 |
