|
|
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafmZoria, с чем помочь? если просто посмотреть на таблицу с точки зрения теории нормализации, то да - таблица не нормализована. Вместо Name нужно делать ссылку на таблицу с именами. Если с точки зрения, что Names это имена разделов, допустим сайта (что-то навевает), то с точки зрения производительности может и не стоит. Names изменяется редко или крайне редко, запрашивается часто. Лучше при изменении Names изменить значение поля в приведенной таблице и заниматься нормализацией во вред. Т.е. в первом случае соглашайтесь, во втором приводите известные недостатки нормализации. да... :) наконец ответы. значит нормализованный вариант, не рассматривая его смысл выглядел бы: tabMenu Id menuName 1 статьи 2 форум 3 sql 4 sql 5 c# 6 mysql tabMenuParent menuId ParentId 1 null 2 null 3 1 4 2 5 1 6 2 где menuId parentId ссылаются на поле Id? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:18 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafmКаждый день думаю об этом.Лучше читайте больше, может быть реже будете демонстрировать некомпетентность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:22 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
ChA iscrafmКаждый день думаю об этом.Лучше читайте больше, может быть реже будете демонстрировать некомпетентность. :) Опять мессия. Добро пожаловать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:24 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Zoriaвыглядел бы: tabMenu Id menuName 1 статьи 2 форум 3 sql /*4 sql*/ - это лишнее 4 c# 5 mysql tabMenuParent menuId ParentId 1 null 2 null 3 1 3 2 4 1 5 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:31 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
vadiminfoСкажите, плиз, аргументы шефа. он был довольно возбужден, и сумбурен, по-моему искал ответов у каких-то университетов, но насколько я поняла, он считает, что парентайди имеет функциональную зависимость от имени? Но это ведь не так, поскольку имя само не определяет элемент однозначно? и так сузим вопрос.....если сущность таблицы - отображение иерархической зависимости , то имеет ли поле парентиди функциональную зависимость от ....имени ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:34 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafmОпять мессия. Добро пожаловать.Ни в коем случае, здесь достаточно одного Вас. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:34 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafm если просто посмотреть на таблицу с точки зрения теории нормализации, то да - таблица не нормализована. Продолжение внесений чего-то свеженького в теорию РМД. А чего? Мож премию Тьюринга дадут. 2 Zoria Внешним признаком, того, что отношение (таблица) не находилась в 3НФ, будет то что после декомпозиции без потерь информации одно из отношений(таблиц) будет содержать меньше записей, чем в исходной. Это, конено, не только к 3НФ относится, но к 3 НФ однозначно. А Вас она интересует. Ваш пример с данным как ни декомпозируй записей будет 5. Чтобы она не была в 3НФ согласно теории, а не тому что говорит iscrafm, нужно два условия (которых не видно в примере с данными): Name было не уникальным (я предполагаю, что Id уникально) и была ФЗ: Name->ParentID. (Из примера видно, что нет ФЗ: ParentID->Name) Не уникальность Name дает отсутствие ФЗ: Name->Id. Тогда нарушение 3НФ на лицо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:38 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
ChA iscrafmОпять мессия. Добро пожаловать.Ни в коем случае, здесь достаточно одного Вас. Удачи. Зачем тогда отмечались? Помогите лучше человеку разобраться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:38 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Вам нужно представить эти два условия. Без них отношение в 3НФ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:41 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafm Zoriaвыглядел бы: tabMenu Id menuName 1 статьи 2 форум 3 sql /*4 sql*/ - это лишнее 4 c# 5 mysql tabMenuParent menuId ParentId 1 null 2 null 3 1 3 2 4 1 5 2 лишнее с точки зрения словаря, но с точки зрения сущностей мы теряем один пункт меню? предположим, мы имеем еще поле описание. Id menuName menuText 1 статьи статьи обо всем 2 форум форум для всех 3 sql скуль для форума 4 sql скуль для описания чего бы то ни было 5 c# тема о с# 6 mysql раздель для мускуль ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:46 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
vadiminfo Ваш пример с данным как ни декомпозируй записей будет 5. Внимательней записи пересчитайте. Можно даже галочки ставить на бумаге ставить (крыжить). vadiminfoЧтобы она не была в 3НФ согласно теории, а не тому что говорит iscrafm, нужно два условия (которых не видно в примере с данными): Name было не уникальным (я предполагаю, что Id уникально) и была ФЗ: Name->ParentID. (Из примера видно, что нет ФЗ: ParentID->Name) Не уникальность Name дает отсутствие ФЗ: Name->Id. Тогда нарушение 3НФ на лицо. так все таки, нормализована или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:50 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Zoria лишнее с точки зрения словаря, но с точки зрения сущностей мы теряем один пункт меню? предположим, мы имеем еще поле описание. Id menuName menuText 1 статьи статьи обо всем 2 форум форум для всех 3 sql скуль для форума 4 sql скуль для описания чего бы то ни было 5 c# тема о с# 6 mysql раздель для мускуль вот этим Вы и выражаете то, что хотите сказать 3 1 - скуль для форума 3 2 - скуль для описания чего то ни было Т.е. Вы выделяете такую сущность как скуль :) при помощи 3, а при помощи связок 3-1, 3-2 находите свою потерянную сущность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:53 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafm так все таки, нормализована или нет? да, вот в чем вопрос.!Ю( ps пошла регистрироваться.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 19:54 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
iscrafm Zoria лишнее с точки зрения словаря, но с точки зрения сущностей мы теряем один пункт меню? предположим, мы имеем еще поле описание. Id menuName menuText 1 статьи статьи обо всем 2 форум форум для всех 3 sql скуль для форума 4 sql скуль для описания чего бы то ни было 5 c# тема о с# 6 mysql раздель для мускуль вот этим Вы и выражаете то, что хотите сказать 3 1 - скуль для форума 3 2 - скуль для описания чего то ни было Т.е. Вы выделяете такую сущность как скуль :) при помощи 3, а при помощи связок 3-1, 3-2 находите свою потерянную сущность имела я в виду, что в данном случае мы не можем сократить количество строк в таблице tbl_Menu и как следствие кол.во строк в tbl_MenuParent будет равно количеству строк в tbl_Menu возьмем пример зависимость люди-шефы :) существует 3 пети , но петя пете рознь не потому что они у разных шефов в подчинении, а потому что они разные люди:) я не увожу нас в лес?:(.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:02 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. Вот пример ненормализованного, но не отношения а только состояния Есть Name->ParentID и нет Name->Id Код: plaintext 1. 2. 3. 4. 5. 6. 7. Тогда декомпозиция приводит к нормализации Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. 7. Однако, нужно чтобы ФЗ сохранялась во всех состояних. И если допустимо Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Поэтому и спрашивали с самого начала про зависмости атрибутов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:05 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Zoriaимела я в виду, что в данном случае мы не можем сократить количество строк в таблице tbl_Menu и как следствие кол.во строк в tbl_MenuParent будет равно количеству строк в tbl_Menu Ну как же не можем... 1 форум 2 статьи 3 ms sql 4 oracle 5 db2 3 1 - sql в форуме 3 2 - статьи по sql 4 1 - oracle в форуме 4 2 - статьи по oracle 5 1 - db2 в форуме 5 2 - статьи по db2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:10 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Там в декомпозиции в отношениях опечтка в именах атрибутов. Надо читать: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:13 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
2 Zoria Ответьте хотя бы для начала на вопрос: в Name возможны повторы? Если нет, то нормализовано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:20 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Zoria возьмем пример зависимость люди-шефы :) Люди-шефы скорее будет одна таблица, т.к. двойное подчинение в реальности вещь нереальная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:21 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
vadiminfo2 Zoria Ответьте хотя бы для начала на вопрос: в Name возможны повторы? Если нет, то нормализовано. Вы отвечаете не читая вопросы? " имена естественно, могут повторяться " (c) Zoria ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:23 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Тада второй ворос: Про зависмость ParentID от Name: Возможно ли чтобы были две записи такие, чтобы значения Name были одинаковы, а ParentID различны? т.е. например Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Здесь в 5 и 16 Значения Name одинаковы - san, ParentID - различны 2 и 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:33 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
ZoriaПолистайте здесь и Вы сами сможете ответить на свои вопросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:37 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
vadiminfoТада второй ворос: Про зависмость ParentID от Name: Возможно ли чтобы были две записи такие, чтобы значения Name были одинаковы, а ParentID различны? Я тут за переводчика с нормального языка на книжный. Да, возможно: Zoria 3 sql скуль для форума 4 sql скуль для описания чего бы то ни было Еще вопросы, не стесняйтесь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:37 |
|
||
|
Теория и практика нормализации.
|
|||
|---|---|---|---|
|
#18+
Кстати, насчет "имена естественно отличаются" - кажется таким уж и естественным. ID - суррогат. Он мало о чем пользователю не говорит. Как он тада будет отличать разные имена? Но это так - комментарий насчет "естественно". Но раз отличваются, то отличаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2006, 20:38 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33740533&tid=1545248]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
140ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 190ms |
| total: | 421ms |

| 0 / 0 |
