powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос по связям между таблицами и 3НФ
64 сообщений из 64, показаны все 3 страниц
Вопрос по связям между таблицами и 3НФ
    #36777256
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня вот такая БД. Допустим есть таблица "Физ. лицо". Он может быть учредителем нескольких компаний, связь один ко многим с таблицей "Трудовая деятельность". Чтобы узнать всю информацию о каждой компании, таблица "Труд. деятельность" связана с таблицей "Компании" один к одному. В свою очередь у окмпании может быть несколько учредителей, тогда связываем таблицу "Компании" с таблицей "Учредители" один ко многим. А чтобы узнать всю инфу о каждом учредителе, таблицу "Учредители" связываем с табл. "Физ. лицо" один к одному.
Можно ли так делать? Или получится полная ерунда? Имеет ли такая база 3-ю нормальную форму?
Заранее спасибо.

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777268
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня вот такая БД. Допустим есть таблица "Физ. лицо". Он может быть учредителем нескольких компаний, связь один ко многим с таблицей "Трудовая деятельность". Чтобы узнать всю информацию о каждой компании, таблица "Труд. деятельность" связана с таблицей "Компании" один к одному. В свою очередь у окмпании может быть несколько учредителей, тогда связываем таблицу "Компании" с таблицей "Учредители" один ко многим. А чтобы узнать всю инфу о каждом учредителе, таблицу "Учредители" связываем с табл. "Физ. лицо" один к одному.
Можно ли так делать? Или получится полная ерунда? Имеет ли такая база 3-ю нормальную форму?
Заранее спасибо.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777409
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор, приведите, пожалуйста, схему, иллюстрирующую то, что Вы на словах рассказали
Извините, со слов трудно воспринимается
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777447
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87Имеет ли такая база 3-ю нормальную форму?3НФ может иметь только таблица.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777501
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChAdsm_87Имеет ли такая база 3-ю нормальную форму?3НФ может иметь только таблица.
Однако, если все таблицы имеют 3НФ, то типа считается, что схема БД находится в 3НФ.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777540
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот схема
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777547
Фотография Rin@t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoChAdsm_87Имеет ли такая база 3-ю нормальную форму?3НФ может иметь только таблица.
Однако, если все таблицы имеют 3НФ, то типа считается, что схема БД находится в 3НФ ."Отношение находится в 3НФ, если оно находится во 2НФ и каждый неключевой атрибут нетранзитивно зависит от первичного ключа."
В определениях нормальных форм ничего про БД не говорится.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777568
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rin@tvadiminfoChAdsm_87Имеет ли такая база 3-ю нормальную форму?3НФ может иметь только таблица.
Однако, если все таблицы имеют 3НФ, то типа считается, что схема БД находится в 3НФ ."Отношение находится в 3НФ, если оно находится во 2НФ и каждый неключевой атрибут нетранзитивно зависит от первичного ключа."
В определениях нормальных форм ничего про БД не говорится.
Ну, например, в теории БД у Мейера говорится, вроде, что схема БД находится в 3НФ, если схема каждого отношения находится в 3НФ. Да и вообще, зачем говорить, что все схемы всех отношений БД в 3НФ, када можно сказать схема БД в 3НФ? Этож вроде ну типа естественно, мне кажется.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777608
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87Чтобы узнать всю информацию о каждой компании, таблица "Труд. деятельность" связана с таблицей "Компании" один к одномуСкажите, пожалуйста, из каких соображений это две разные таблицы, а не одна таблица "Компании" ?


dsm_87А чтобы узнать всю инфу о каждом учредителе, таблицу "Учредители" связываем с табл. "Физ. лицо" один к одномуЗдесь у меня возник аналогичный вопрос
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777625
Фотография Rin@t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfo, определение чего либо должно носить точный характер.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777684
Ortogon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87 ,

То, что вы описали, вполне может быть в 3NF, а может и нет. Для того, чтобы это понять, нужна информация об остальных полях. То, что вы описали выглядит вполне нормальным. То, что база в 3NF упрощенно можно описать так: ни в одной из таблиц не должно быть полей, однозначно зависящих от других полей этой таблицы, которые не входят в первичный ключ. То есть все сущности должны сидеть каждая в своей таблице и связаны друг с другом ссылками. Если в одной таблице сидят характеристики нескольких сущностей, то она не нормализована. В вашем базе нужно знать примеры этих характеристик, чтобы это увидеть. У вас две сущности "Физ. лица" и "Компании", и две связи многие ко многим между ними: "учредители" и "трудовая деятельность". Выглядит вполне нормализованно. Если конечно у вас в таблице "трудовая деятельность" не дублируются какие-либо характеристики компаний, либо какой-то еще другой сущности и ее характеристик, например "должность". Тогда уже эта таблица и вся база будет ненормализованной и нужно будет выносить ее в отдельную таблицу, чтобы нормализовать.

При дальнейшем усложнении модели этим процессом можно заниматься до бесконечности, другой вопрос, так ли уж это надо.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777690
Ortogon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О, пока писал, тут уже схему выложили.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777804
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а кстати ещё вопрос: когда создаём связи между таблицами, всегда желательно оставлять связь типа FOREIGN KEY?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777818
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87а кстати ещё вопросна мой последний вопрос ответьте, пожалуйста

dsm_87когда создаём связи между таблицами, всегда желательно оставлять связь типа FOREIGN KEY?не понял
FOREIGN KEY это ведь и есть связь между таблицами...
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777842
Фотография Rin@t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87а кстати ещё вопрос: когда создаём связи между таблицами, всегда желательно оставлять связь типа FOREIGN KEY?На мой взгляд - предпочтительнее, чем логическая.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777846
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Паганельdsm_87а кстати ещё вопросна мой последний вопрос ответьте, пожалуйста

дело в том, что связь между таблицами "физ. лицо" и "компании" получается многие ко многим

dsm_87когда создаём связи между таблицами, всегда желательно оставлять связь типа FOREIGN KEY?не понял
FOREIGN KEY это ведь и есть связь между таблицами...

ну если у нас связь один к одному, стоит ли выключать опцию FOREIGN KEY?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777863
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87дело в том, что связь между таблицами "физ. лицо" и "компании" получается многие ко многим
Это и есть ответ на вопросПаганельdsm_87таблица "Труд. деятельность" связана с таблицей "Компании" один к одномуСкажите, пожалуйста, из каких соображений это две разные таблицы, а не одна таблица "Компании" ??
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777965
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Паганель,

Ну допустим в одной компании работают 10 человек, инфа о которых есть в "Физ. лицо". Тогда получим в таблице "Компании" 10-кратное дублирование инфы об этой компании, так как они например на разных должностях, с разным стажем и т.д.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36777973
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Паганельdsm_87таблица "Труд. деятельность" связана с таблицей "Компании" один к одномуСкажите, пожалуйста, из каких соображений это две разные таблицы, а не одна таблица "Компании" ?Где тут про "Физ. лицо" ?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778008
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сейчас немного изменил схему
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778012
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вам эта? Вообще никуда не годится или лучше?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778019
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уже сказали
OrtogonУ вас две сущности "Физ. лица" и "Компании", и две связи многие ко многим между ними: "учредители" и "трудовая деятельность".
Выглядит вполне нормализованноя с этим согласен
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778030
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
от себя я бы добавил,
что совокупность полей ClientID/CompanyID можно сделать первичным ключом таблицы LaborActivity,
а поле Id из нее выкинуть

но решать Вам
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778042
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, то же самое по связи "учредители"
(которая я теперь не понимаю где на схеме... пропала куда-то...)
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778072
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запутался сам и Вас запутал
вот что я хотел сделать. при помощи табл. LaborActivity можно узнать, в каких компаниях человек работал либо является учредителем. а для компаний при помощи LaborActivity можно узнать инфу обо всех сотрудниках. если использовать последнюю схемку это реально?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778075
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rin@tvadiminfo, определение чего либо должно носить точный характер.
Уточняю характер:
Схема БД находится в 3НФ относительно данных функциональных зависемостей, если каждая схема отношения из данной схемы БД находится в 3НФ относительно этих функциональных зависемостей.
Впрочем, что Вы понимаете по "точным характером" возможно тоже нуждается в определении "точно характера".
Не ясно тока какой смысл Вам отрицать очевидные старые понятия? В чем идея то? Какая выгода? Чтобы называть это же другими словами и более длинно?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778080
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87при помощи табл. LaborActivity можно узнать, в каких компаниях человек работал либо является учредителемИ как отличить, на кого заведена запись в таблице LaborActivity - на сотрудника или на учредителя?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778099
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, я забыл добавить поле ActivityStatus. ну допустим я добавлю ещё поля, в которых будет указываться вся инфа о трудовой дейтельности. мне вот интересно, будет ли вообще эта схема работать.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778108
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87Сорри, я забыл добавить поле ActivityStatusИ кучу проверок "если ActivityStatus означает учредителя, то поле Job должно быть NULL иначе поле Job должно быть NOT NULL" и т.д.
может, на надо так все усложнять, может, просто вернуть таблицу CompanyColleague ?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778138
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ок. но вот тогда если связь между "CompanyColleague" и "ClientProfileNaturalPerson" ставить один к одному, то получается зачастую конфликт ключей
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778149
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я ж на это Ваше внимание еще три часа назад обратил:ПаганельСкажите, пожалуйста, из каких соображений это две разные таблицы, а не одна таблица "Компании" ?
dsm_87А чтобы узнать всю инфу о каждом учредителе, таблицу "Учредители" связываем с табл. "Физ. лицо" один к одномуЗдесь у меня возник аналогичный вопрос
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778151
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ясно. тогда я не могу въехать, как их лучше связать?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778159
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В той модели, с которой все началось,
замените обе связи "один к одному" на связи "один ко многим"

Потому чтоOrtogonУ вас две сущности "Физ. лица" и "Компании", и две связи многие ко многим между ними: "учредители" и "трудовая деятельность"А связь "многие ко многим" это как раз и есть "промежуточная" таблица
Две связи "многие ко многим" - две "промежуточные" таблицы
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778181
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
связи таким образом создавать?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778207
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ещё, если один "физ. лицо" может являться учредителем нескольких компаний или просто работал на нескольких организациях, а у компании в свою очередь может быть несколько учредителей. разве это не одна связь многие ко многим?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778377
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoRin@tvadiminfo, определение чего либо должно носить точный характер.Схема БД находится в 3НФ относительно данных функциональных зависемостей, если каждая схема отношения из данной схемы БД находится в 3НФ относительно этих функциональных зависемостей.Нет у БД понятия НФ, оно есть только у таблиц и не надо фантазировать, выдумывая нелепые определения типа "схема БД находится в 3НФ относительно данных функциональных зависемостей". Можно, конечно, группу блондинок называть группой-блондинкой, но она так и останется группой блондинок , так как сама группа не может быть блондинкой. Блондинка - это характеристика элемента множества, а не самого множества, так же, как и 3НФ.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778643
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87связи таким образом создавать?На Вашей последней схеме на связи между ClientsProfileNaturalPerson и CompanyColleague ключик не с той стороны
Другими словами, у Вас один учредитель может быть несколькими физ.лицами
А надо наоборот - одно физ.лицо может быть учредителем несколько раз (т.е. для нескольких компаний)
--------------------------------------------------------------------------------------
На связи между таблицами Company и LaborActivity ключик тоже не с той стороны
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36778645
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87и ещё, если один "физ. лицо" может являться учредителем нескольких компаний или просто работал на нескольких организациях,
а у компании в свою очередь может быть несколько учредителей.
разве это не одна связь многие ко многим?OrtogonУ вас две сущности "Физ. лица" и "Компании", и две связи многие ко многим между ними: "учредители" и "трудовая деятельность" ПаганельДве связи "многие ко многим" - две "промежуточные" таблицы
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779568
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
приветствуется ли использование двух и более полей в качестве первичного ключа?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779580
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с точки зрения проектирования какие-либо ограничения на количество полей ключа мне неизвестны

но MS SQL, насколько я помню, ограничивает количество ключевых полей любого индекса числом 16
возможно, Ваша СУБД тоже ограничивает
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779602
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но вообще если я буду использовать в некоторых таблицах первичный ключ состоящиё из двух полей, то что-нибудь изменится в лучшую или худшую сторону?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779627
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
использование правильного ключа вместо неправильного всегда меняет ситуацию в лучшую сторону
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779754
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если у нас есть три таблицы, две из них связаны с третьей один ко многим, то лучше всё-таки в этих двух первых таблицах использовать ключ из двух полей, чтобы избежать проблем?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779806
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87если у нас есть три таблицы, две из них связаны с третьей один ко многим,
то лучше всё-таки в этих двух первых таблицах использовать ключ из двух полей, чтобы избежать проблем?Паганельсовокупность полей ClientID/CompanyID можно сделать первичным ключом таблицы LaborActivity,
а поле Id из нее выкинуть

но решать Вам
Третья нормальная форма
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779897
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну допустим. но при этом каждая строка таблицы LaborActivity не полтеряет свою уникальность?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779899
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще раз - решать Вам
если в Вашей задаче одно лицо не может быть сотрудником одной и той же компании дважды
то пара ClientID/CompanyID однозначно идентифицирует запись таблицы LaborActivity
то есть является претендентом на звание ключа
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779953
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ещё проблемка такая, будет ли таблица Transactions иметь 3-ю нормальную форму. просто мне кажется или поле RegistryNumber например зависит от неключевого поля ClientID
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779970
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Погодите-погодите
Как это у Вас в таблице Company поле RegistryNumber попало в первичный ключ?
Я этого точно не советовал!

Вы понимаете, что теперь у Вас может быть две компании с одинаковыми ID ?
(если RegistryNumber разные)
Вы уверены, что хотите именно этого?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36779986
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но ведь ID - счетчик
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780002
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, т.е. по ID все равно можно однозначно идентифицировать запись, но в ПК входит еще что-то?
Вторая нормальная форма
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780009
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. составной ключ использовать лучше лишь в LaborActivity как Вы мне посоветовали? или другими словами, там где есть связь многие ко многим
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780024
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет, не так

надо определить поля (или их комбинации),
по которым можно однозначно идентифицировать запись
(то есть однозначно отличить ее от других записей таблицы)
это будут кандидаты на роль первичного ключа

чаще всего кандидат один
(если их больше одного, желательно перепроверить, может, мы неправильно определили сущности)

далее, если кандидатов больше одного, следует выбрать кого-то из кандидатов
(признаюсь честно, это для меня самого всегда тяжело)

оставшиеся кандидаты будут альтернативным ключом(ами)
то есть unique constraint(s)

а уж составной ключ или не составной - для нормализации не так важно
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780030
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну как я понял, в таблице компании использование составного ключа не рекомендуется, так как ID - счетчик. а если использовать ещё какое-то поле, то нарушаем вторую нормальную форму, так все атрибуты могут зависеть только от ID. верно?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780039
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780047
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ещё)
при использовании такой вот схемы, не возникнут проблемы при поиске иформации о транзакциях, проводимых клиентом? просто у нас ClientID = ID из разных таблиц, т.е. может повторяться. в транзакциях у нас ID конечно тоже счетчик, но вот если при создании запроса показать информацию о транзакциях, может ли получиться такое: у физ. лица ID=12 и у компании ID=12, я хочу вывести информацию о физ. лице, а получаю о компании
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780066
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если между какими-то двумя таблицами нужна связь "многие-ко-многим"
то для ее реализации создают "промежуточную" таблицу
(да простят меня профессионалы проектирования за столь зверское название)

У Вас таблица Transactions для этого создана?
Если она "реализует" связь "многие-ко-многим", то между какими двумя таблицами?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780083
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дело в том, что каждый клиент может совершить сколь угодно транзакций. так я вот не знаю, создать 3 таблицы для физ. лица, компании и ип каждую или дону общую для всех. связи многие ко многим среди них нет.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780093
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
были понятия "труд. деятельность" и "учредитель"

ху из "транзакция" ???
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780098
dsm_87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну просто это части одной большой схемы)
в данной ситуации между этими тремя таблицы связи многие ко многим быть не должно, так вот чтобы для каждого типа клиентов не создавать отдельно таблицы транзакций, можно ли создать одну общую для всех?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780124
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87чтобы для каждого типа клиентов не создавать отдельно таблицы транзакцийя думаю, бороться за количество таблиц как за самоцель так же бессмысленно,
как бороться за количество полей, входящих в ПК

поэтому причин,
чтобы объединять транзакции разных типов клиентов в одну таблицу Transactions,
я не вижу
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780707
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dsm_87,

Глядя на Вашу диаграмму . Вы действительно уверены, что "юриков" надо разделить по двум таблицам? Разница-то всего в два поля. Занафига?
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780783
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChAНет у БД понятия НФ,

Тем ни менее для схем реляционных БД понятием НФ пользуются нескока десятков лет. Вроде вреда нет.

ChA
оно есть только у таблиц и не надо фантазировать, выдумывая нелепые определения типа "схема БД находится в 3НФ относительно данных функциональных зависемостей".

Кто решил, что оно есть только у таблиц и внес запрет на исползование, например, для схем?
Тем более не все могут согласиться, что она у таблиц есть. Это мло типа не "точная характеристика" ради упрощения. А для семы БД вроде точная. Ечть для схемы отношения, есть и для схемы БД. Удобно. Буржуа придумал.
Фамилия того кто запретил есть? Почему решили запретить через 30 лет?

ChA
Можно, конечно, группу блондинок называть группой-блондинкой, но она так и останется группой блондинок , так как сама группа не может быть блондинкой. Блондинка - это характеристика элемента множества, а не самого множества, так же, как и 3НФ.
Ну пусть типа 3НФ - 3 нормальная форма ног. Женщина в 3НФ - женщина с достаточно хорошими ногами, группы женщин в 3НФ - все в группе ногастые. Если хоть у одной кривые, то группа не в 3НФ. Поди плохо? Это имеет значение и для синхронного плавания, например.
Проблемы множеств, являющихся элементами самих себя, вроде, не возникают.
Это чисто языковый аспект: многозночность индоевропейских языков. Так или иначе.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36780804
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoМы говорим об определениях, применимых к конкретным видам объектов, а Вы пытаетесь натянуть их на всю Вселенную. Обсуждать определения типа "группа считается кривоногой, если каждый её участник кривоног" мне лично кажется абсурдным. Хотя бы потому, что у группы нет ног .

Не знаю, что там было в первоисточнике, но в переводе у Мейера определения нормальных форм для баз данных выглядят откровенно надуманным, как определение ради определения. В лучшем случае, его можно было бы принять на уровне договорённости, но не более того. При этом отдавая себе отчёт, что НФ схемы БД не имеют ничего общего с НФ её отношений . А то так можно дойти до сервера в 3НФ, в котором все БД имеют 3НФ и т.д., и т.п.
...
Рейтинг: 0 / 0
Вопрос по связям между таблицами и 3НФ
    #36781133
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChAМы говорим об определениях, применимых к конкретным видам объектов, а Вы пытаетесь натянуть их на всю Вселенную. Обсуждать определения типа "группа считается кривоногой, если каждый её участник кривоног" мне лично кажется абсурдным. Хотя бы потому, что у группы нет ног .
Нет уж извинтите, это Вы натягиваете что-то на ровном месте: то про языковые, то теоретико-множественные моменты. Теперь про "конкретные" виды объектов, типа пытаетесь зайти со стороны логики, хотя ясно что это слишком натянутое за уши.
В данном случае 3НФ можно заменить термином "удовлетворительная" (удовлитворительная дама, удовлитворительная группа дам), а "не кривоногая".
Дама удовлитворительная, если у ея не кривые ноги. Например, для синхронного плавния (да и не только). Ну группа дам удовлитворительна, если у кажной не кривые ноги.
Вот говроить что у таблицы ЕСТЬ 3НФ, это звучит более похоже на то, что у группы ЕСТЬ ноги.
Но Вас это не смущает. А тут вдруг Вы обеспокоились.

ChA
Не знаю, что там было в первоисточнике, но в переводе у Мейера определения нормальных форм для баз данных выглядят откровенно надуманным, как определение ради определения. В лучшем случае, его можно было бы принять на уровне договорённости, но не более того. При этом отдавая себе отчёт, что НФ схемы БД не имеют ничего общего с НФ её отношений . А то так можно дойти до сервера в 3НФ, в котором все БД имеют 3НФ и т.д., и т.п.
Ну это кому как. Думаю, что у Мейера, то как раз все на своем месте. И скорее всего, он не сам это все придумал, а кое-кто поумнее нас с Вам там поучаствовал.
И кто это будет принимать на уровне договоренности? Кто такие, какого звания? Фамилии у них есть? С какой стати? Это должна быть какая-то международная коммисия? Так как мы последние кто к этим понятиям имеет правовое отношение: это все буржуа придумал пока мы тут социализм строили. А теперь их учить жизни про нормальные формы наши парни будут?
Но если у них есть рациональное, то пусть выкладывают: жизнь покажет.
И как же "НФ схемы БД не имеют ничего общего с НФ её отношений"? А функциональные зависмости? А атрибуты? Информация о том, что схема БД в 3НФ, означает, что каждая схема отношения в 3НФ. Что общее присущее им все же есть, скорее всего.
Если дойдете до сервера в 3НФ, и от этого польза буит, то не пожалеете. Но боюсь, что до куда моно было дойти, дошли лет 30 назад. Все пенки сняты, моно не беспокоиться: поздняк метаться.
...
Рейтинг: 0 / 0
64 сообщений из 64, показаны все 3 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос по связям между таблицами и 3НФ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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