powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
16 сообщений из 16, страница 1 из 1
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38766680
Здравствуйте,

Предположим есть таблица OrderItems:
[ID, OrderItemTypeID, Description, Price, Quantity, ...]

Есть различные типы order items, задаваемые OrderItemTypeID (в коде потом они по-разному обрабатываются). Теперь у нас появился новый тип order item, для которого нужно указывать TaxTypeID. Если добавить TaxTypeID в таблицу OrderItems, то у многих order items поле TaxTypeID будет содержать null.

Будет ли такой дизайн нарушать какую-либо нормальную форму? Если да, то у меня большая просьба дать ссылку на документ, который бы это подтвердил.

Спасибо!
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38766691
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryБудет ли такой дизайн нарушать какую-либо нормальную форму?

Если для одного и того же OrderItemTypeID TaxTypeID всегда одинаковый, то да, нарушает.
Вторую.

Тип налогообложения - обычно атрибут товара вообще, а не товара в накладной. С другой
стороны при изменении ставки налога старые накладные меняться не должны, так что либо это
будет периодический атрибут, либо он таки будет атрибутом товара в накладной (вторая НФ
всё ещё нарушается, но с этим ничего не поделать).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38766717
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Будет ли такой дизайн нарушать какую-либо нормальную форму?

Будет даже без добавления TaxTypeID. Странная, неестественная модель.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38766775
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Будет ли такой дизайн нарушать какую-либо нормальную форму?

Будет даже без добавления TaxTypeID. Странная, неестественная модель.Почему странная?
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38766861
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryПредположим есть таблица OrderItems:
[ID, OrderItemTypeID, Description, Price, Quantity, ...]
Есть различные типы order items, задаваемые OrderItemTypeID (в коде потом они по-разному обрабатываются). Теперь у нас появился новый тип order item, для которого нужно указывать TaxTypeID. Если добавить TaxTypeID в таблицу OrderItems, то у многих order items поле TaxTypeID будет содержать null.
Будет ли такой дизайн нарушать какую-либо нормальную форму? Если да, то у меня большая просьба дать ссылку на документ, который бы это подтвердил.Некоторые авторитеты, например - Дейт, отказывают в праве называть модель данных реляционной, если в ней используется NULL. Соответственно, не имеет смысла говорить о нормализации, так как она относится к сугубо реляционной модели. Его мнение и аргументы можно нагуглить в его статьях или книгах. Если их игнорировать, как и мнения авторитетов поменьше, типа Дарвена и Паскаля, и не лезть в теоретические и терминологические битвы, а руководствоваться кондовой практикой, то вас не должны волновать какие-то там нормальные формы. Хотя проектировщики со стажем обычно стараются избегать хранимых NULL, так как практически всегда можно построить модель, без использования в таблицах NULL-значений. Только после этого можно говорить о наличии и отсутствии нарушений НФ.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38767983
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryЗдравствуйте,

Предположим есть таблица OrderItems:
[ID, OrderItemTypeID, Description, Price, Quantity, ...]

Есть различные типы order items, задаваемые OrderItemTypeID (в коде потом они по-разному обрабатываются). Теперь у нас появился новый тип order item, для которого нужно указывать TaxTypeID. Если добавить TaxTypeID в таблицу OrderItems, то у многих order items поле TaxTypeID будет содержать null.

Будет ли такой дизайн нарушать какую-либо нормальную форму? Если да, то у меня большая просьба дать ссылку на документ, который бы это подтвердил.

Спасибо!
ну по стандартной логике TaxTypeID надо добавлять в справочник с Типами Ордеров.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38768121
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А аудиторский след или нечто подобное не требуется случаем?
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38768237
1001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DontWorryRelaxItsNoHurryЗдравствуйте,

Предположим есть таблица OrderItems:
[ID, OrderItemTypeID, Description, Price, Quantity, ...]

Есть различные типы order items, задаваемые OrderItemTypeID (в коде потом они по-разному обрабатываются). Теперь у нас появился новый тип order item, для которого нужно указывать TaxTypeID. Если добавить TaxTypeID в таблицу OrderItems, то у многих order items поле TaxTypeID будет содержать null.

Будет ли такой дизайн нарушать какую-либо нормальную форму? Если да, то у меня большая просьба дать ссылку на документ, который бы это подтвердил.

Спасибо!


четать учебники

вапрос-та
в в чем
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38768594
Dimitry SibiryakovЕсли для одного и того же OrderItemTypeID TaxTypeID всегда одинаковый, то да, нарушает.
Вторую.

Для одного и того же OrderItemTypeID могут быть (и обычно бывают) разные TaxTypeID.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38768595
1001четать учебники
вапрос-та
в в чем
Кто здесь?
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38768689
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а можно теперь по-русски, что такое вообще в вашем понимании OrderItems и его поля
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38769551
Naf,

OrderItems - составляющие заказа, т.е. в заказе может быть 2 пары тапочек, 2 монитора, ночник в форме грибов, подписка на prime membership, чаевые и аренда велосипеда на месяц.

Основные поля я перечислил в исходном сообщении, правда, виноват, забыл указать поле OrderID, т.е. таблица выглядит примерно так:
[ID, OrderID, OrderItemTypeID, Description, Price, Quantity, ...]
Это на данный момент.

Т.е. у нас есть разные типы order items - продукты, услуги, членские карточки и т.д. Для одного из новых типов order item возникла небходимость хранить еще TaxTypeID (тип налога, который может быть всегда разный). Тип налога на данный момент будет указываться (всегда) только для одного из типов order items, т.е. допустим для order items c OrderItemTypeID = 7.

Мы уже решили, что добавим TaxTypeID в ту же таблицу OrderItems (а не в отдельную связывающую таблицу, как могло бы быть, например [OrderItemID, TaxTypeID]. Т.к. решение уже принято (у DBA свои причины), то у меня вопрос чисто теоретический уже: нарушает ли это какую-либо нормальную форму, и если да то какую.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38769552
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryтип налога, который может быть всегда разный
То есть у вас одни и те же тапочки могут облагаться разными налогами в зависимости от
погоды на Марсе?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38769763
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryNaf,

OrderItems - составляющие заказа, т.е. в заказе может быть 2 пары тапочек, 2 монитора, ночник в форме грибов, подписка на prime membership, чаевые и аренда велосипеда на месяц.

Основные поля я перечислил в исходном сообщении, правда, виноват, забыл указать поле OrderID, т.е. таблица выглядит примерно так:
[ID, OrderID, OrderItemTypeID, Description, Price, Quantity, ...]
Это на данный момент.
зачем там Description?
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38769891
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DontWorryRelaxItsNoHurryвопрос чисто теоретический уже: нарушает ли это какую-либо нормальную форму, и если да то какую.Формально, можно было бы сказать, что есть нарушение 3НФ , любой неключевой атрибут должен зависить от ключа и только от ключа. У вас же один неключевой атрибут зависит от другого неключевого. Хуже того, у вас само существование неключевого атрибута(NULL) зависит от другого неключевого атрибута, что явно говорит о необходимости декомпозиции отношения.
...
Рейтинг: 0 / 0
Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
    #38770054
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovDontWorryRelaxItsNoHurryтип налога, который может быть всегда разный
То есть у вас одни и те же тапочки могут облагаться разными налогами в зависимости от
погоды на Марсе?..
порядок налогообложения зависит не только от товара (тапочки) но и от типа контрагента (юрик/физик/ичп), продавшего вам оные тапочки.
от его резидентности (РФ|РБ|ИНОЕ) и т.п.

это банальность для тех, кто пару строчек черкал в учёт ндс, или более старого НсП (налога с продаж)

какбе фейспалм детектед
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Нарушает ли добавление такой колонки нормализацию? (SQL Server если это важно)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]