powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Стоит ли делать отдельное поле для PK?
21 сообщений из 96, страница 4 из 4
Стоит ли делать отдельное поле для PK?
    #39606188
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
из этого трактатаВы столь безапелляционно заявляете со ссылкой на Иванова Ивана Ивановича или Петрова Петра Петровича?

Однако же, было замечено что агрегатное состояние сей изоморфной химеры столь неустойчиво, что от вас потребуется максимально точный момент времени вышеупомянутого заявления для корректного определения смещения по линейке ИвановоИваноИвановичей-ПетровыхПетровПетровичей. Затем и оценим степень достоверности вашего мнения. Может все наоборот!

Извините, но вы так витиевато изъясняетесь, так что я по прежнему не понимаю о чем вы.
Опасения, что Иванова Ивана Ивановича и Петрова Петра Петровича можно перепутать беспочвенны. Ничего там не перепутывается.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606196
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В вакууме соществует Юзер1 в группе1. USER_IN_GROUP
В жизни существует Юзер1 в группе1 с 1 янв. по 20 фев. и в группе 2 с 21 фев по 31 мая.

User_Id, Group_Id, Date_from,Date_to

PK будет уже минимум три поля.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606212
Ivan DurakВ вакууме соществует Юзер1 в группе1. USER_IN_GROUP
В жизни существует Юзер1 в группе1 с 1 янв. по 20 фев. и в группе 2 с 21 фев по 31 мая.

User_Id, Group_Id, Date_from,Date_to

PK будет уже минимум три поля.
Код: sql
1.
User_Id, Group_Id, Date_from,Date_to, Is_IvanovIvanIvanovich, Is_PetrovPetrPetrovich
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606246
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakВ вакууме соществует Юзер1 в группе1. USER_IN_GROUP
В жизни существует Юзер1 в группе1 с 1 янв. по 20 фев. и в группе 2 с 21 фев по 31 мая.

User_Id, Group_Id, Date_from,Date_to

PK будет уже минимум три поля.

В постановке ТС такого требования не было. Ну если нужно во времени отслеживать- не вижу никаких проблем.
Делается суррогатный ключ ID и все- им ссылаться можно куда угодно (хотя в данном примере я даже не могу придумать куда можно было бы ссылаться именно из это таблицы):
SergueiЕсли из USR_IN_GROUP нужно будет ссылку делать в другие места, то лучше сделать суррогатный ключ, иначе эта сладкая парочка (а вообще ведь в ключе может быть и больше полей) транзитом разъедется по связанным таблицам, что не очень удобно.


Дополнительно, чтобы контролировать целостность данных на этой табличке нужен уникальный индекс и все.
Код: sql
1.
 *ID(PK), User_Id, Group_Id, Date_from,Date_to
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606375
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakВ вакууме соществует Юзер1 в группе1. USER_IN_GROUP
В жизни существует Юзер1 в группе1 с 1 янв. по 20 фев. и в группе 2 с 21 фев по 31 мая.

В жизни можно набрать воды в ванную, залезть туда, помыться, сразу там же помыть посуду и кофейку заварить в этой же воде.

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

Какая проблема вести историю, аудит отдельно? Если не религия, то отсутствие способности к мышлению
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606435
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttIvan DurakВ вакууме соществует Юзер1 в группе1. USER_IN_GROUP
В жизни существует Юзер1 в группе1 с 1 янв. по 20 фев. и в группе 2 с 21 фев по 31 мая.

В жизни можно набрать воды в ванную, залезть туда, помыться, сразу там же помыть посуду и кофейку заварить в этой же воде.

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

Какая проблема вести историю, аудит отдельно? Если не религия, то отсутствие способности к мышлению

Если бы не отчеты и документы, то было бы все замечательно.
А так приходится "изгаляться", чтобы отчет на дату показывал, что было тогда, а не непонятно что.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606518
hVostt,

В жизни можно набрать воды в ванную, залезть туда, помыться, сразу там же помыть посуду и кофейку заварить в этой же воде.
Ключевое тут "в этой же воде"
По сути вы предлагаете тащить к дому минимум три водопровода с одной и той же водой - отдельно на помыться, отдельно на посудомойку, отдельно на какаю, а если еще какая потребность вылезет, то наши руки не для скуки. Любой каприз лечится тупо новыми таблицами без ключей и связей и это все под флагом "ничего лишнего".
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606634
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulЕсли бы не отчеты и документы, то было бы все замечательно.
А так приходится "изгаляться", чтобы отчет на дату показывал, что было тогда, а не непонятно что.

Не понятно, о чём конкертно говорим, давайте на примерах?
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606635
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с какой стороны смотретьПо сути вы предлагаете тащить к дому минимум три водопровода с одной и той же водой - отдельно на помыться, отдельно на посудомойку, отдельно на какаю, а если еще какая потребность вылезет, то наши руки не для скуки. Любой каприз лечится тупо новыми таблицами без ключей и связей и это все под флагом "ничего лишнего".

Ну технически, во многих домах именно так и есть. В ванной один кран, на кухне два: один посуды мыть, другой с чистой питьевой водой.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606643
hVostt,

Ну технически, во многих домах именно так и есть. В ванной один кран, на кухне два: один посуды мыть, другой с чистой питьевой водой.

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

Открою вам секрет, ключевая мысль с водой никак не связана.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39606766
hVostt,
ну тогда, в том посте вообще нет ни одной ключевой мысли, просто лишний пост, с горяча
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607125
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с какой стороны смотретьhVostt,
ну тогда, в том посте вообще нет ни одной ключевой мысли, просто лишний пост, с горяча

Ключевая мысль простая: разделяй и властвуй.
Нехрен в одну таблицу пихать разные по смыслу данные.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607178
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttКлючевая мысль простая: разделяй и властвуй.
Нехрен в одну таблицу пихать разные по смыслу данные.ОК. Встречный вапроз:
Нахрен создавать для каждого "смысла" отдельную таблицу ? Допустим этих "смыслов" многие сотни.
Н-р параметры товаров в магазине техники. Только у смартфона их неск. десятков. А в итоге - многие тысячи.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607198
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVНахрен создавать для каждого "смысла" отдельную таблицу ? Допустим этих "смыслов" многие сотни.
Н-р параметры товаров в магазине техники. Только у смартфона их неск. десятков. А в итоге - многие тысячи.

Не вижу никаких разных смыслов. В таблице "Товары" хранятся товары. Если наборы характеристик разные, решается несколькими способами, от EAV, до XML/JSON/P.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607427
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttLSVНахрен создавать для каждого "смысла" отдельную таблицу ? Допустим этих "смыслов" многие сотни.
Н-р параметры товаров в магазине техники. Только у смартфона их неск. десятков. А в итоге - многие тысячи.

Не вижу никаких разных смыслов. В таблице "Товары" хранятся товары. Если наборы характеристик разные, решается несколькими способами, от EAV, до XML/JSON/P.
вы, товарищ, как я понимаю, хотите иметь и таблицу связи:
user_id, group_id

и отдельно к ней таблицу истории, вида
user_id, group_id (эти поля FK на первую таблицу), date_from, date_to

Я ничего не перепутал? Такая задумка да??
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607842
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakЯ ничего не перепутал? Такая задумка да??

Вариантов хранить историю отдельно -- много. Вам все привести, или сами нагуглите?
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607953
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttIvan DurakЯ ничего не перепутал? Такая задумка да??

Вариантов хранить историю отдельно -- много. Вам все привести, или сами нагуглите?
ok. Будем считать это за подтверждение.
Теперь следующий вопрос:
Будете ли вы хранить в первой таблице (user_id, group_id) связи для уже устаревших групп??
тех которые не актуальны???
Если нет - на что тогда ссылаться таблице с историей?? FK то у нее есть.
Если да - как же тогда отличить в таблице связей актуальную связь от неактуальной? Придется для ЛЮБОГО построения связей еще и в таблицу истории лазить, так?
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39607963
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durak,


Ivan DurakБудете ли вы хранить в первой таблице (user_id, group_id) связи для уже устаревших групп??

Нет.


Ivan Durakтех которые не актуальны???

Нет.


Ivan DurakЕсли нет - на что тогда ссылаться таблице с историей?? FK то у нее есть.

У исторических таблиц ФК на исторические таблицы.


Ivan DurakЕсли да - как же тогда отличить в таблице связей актуальную связь от неактуальной? Придется для ЛЮБОГО построения связей еще и в таблицу истории лазить, так?

Вот именно для того, чтобы не ипсти никому мозг, и не изворачиваться ужом, чтобы построить банальнейшие запросы, надо всё лишнее из актуальных таблиц убрать. И поберечь нервы других разработчиков.
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39608190
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttУ исторических таблиц ФК на исторические таблицы.

WAT ??????

Боюсь вы страшно далеки от реального датамоделинга
...
Рейтинг: 0 / 0
Стоит ли делать отдельное поле для PK?
    #39608238
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakhVosttУ исторических таблиц ФК на исторические таблицы.

WAT ??????

Боюсь вы страшно далеки от реального датамоделинга

Вы видимо нормального датамоделинга в глаза не видели, отсюда такие смешные заявления.
...
Рейтинг: 0 / 0
21 сообщений из 96, страница 4 из 4
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Стоит ли делать отдельное поле для PK?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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