|
|
|
Эксперимент с естественными ключами..
|
|||
|---|---|---|---|
|
#18+
Eсть месячный отчёт по планированию, который структурировал так Eсть таблица: Наименование группы, Неснижаемый остаток подчинённая таблица Наименование изделия, план закупок подчинённая таблица к наим. изделия Дата, Дозаказ Неснижаемый остаток, план закупок может пересматриваться от месяца к месяцу (для месяца статичен) Дозаказы можем добавлять в течении месяца. позиции Наименование изделия могут добавляться или удаляться чтобы посмотреть изначальный отчёт в прошлом, первую таблицу разделим и подобавляем поле месяц т.к. месяц неуникальный склеим его с годом - месяц-год) Получим структуру таблица plan (id, name) (id суррогатный ключ) таблица plan_mnth (month, plan_code, balance) (month, plan_code будем считать естественным ключём) таблица plan_product (month, plan_code, prod_code, weight) (month, plan_code, prod_code будем считать естественным ключём) таблица plan_prod_reord (id, month, plan_code, prod_code, weight) (id суррогатный pk ключ, month, plan_code, prod_code естественный fk ключ) по моему много замут с ведением естественных ключей, с суррогатными, субъективно намного проще работать и те же join-ы писать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2016, 20:18 |
|
||
|
Эксперимент с естественными ключами..
|
|||
|---|---|---|---|
|
#18+
_Гостьи, Нарисовали бы сразу и альтернативный вариант: таблица plan (id, name) (id суррогатный ключ) таблица plan_month (id, month, id_plan, balance) (month, plan_code - уникальный индекс) таблица plan_product (id, id_plan_month, prod_code, weight) (id_plan_month, prod_code - уникальный индекс) таблица plan_prod_reord (id, id_plan_product, weight) Теперь видно, что если использовать суррогатные ключи для связи, экономится место в базе. Зато теперь Вы обязаны соединять все таблицы. В первом варианте для некоторых запросов типа "посчитать максимальный дозаказ для планов за месяц" можно было соединить только plan и plan_prod_reord. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 10:38 |
|
||
|
Эксперимент с естественными ключами..
|
|||
|---|---|---|---|
|
#18+
совершенно верно, получается, чем больше глубина, тем длиннее естественный ключ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 16:34 |
|
||
|
Эксперимент с естественными ключами..
|
|||
|---|---|---|---|
|
#18+
_Гостьи, в аналитических задачах естественные ключи достаточно часто используется, и, если они есть, можно и нужно пробовать их использовать. так что не бойся, и вперед! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2016, 08:15 |
|
||
|
Эксперимент с естественными ключами..
|
|||
|---|---|---|---|
|
#18+
_Гостьипо моему много замут с ведением естественных ключей, Вы ещё даже не добрались до настоящих замут с ведением естественных ключей. _Гостьис суррогатными, субъективно намного проще работать и те же join-ы писать? Намного проще и намного надёжнее. Естественные ключи подходят, по сути, только в одном месте: в витрине данных, которую Вы в любой момент можете полностью перегрузить с нуля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2016, 16:53 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=13&tid=1540234]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 138ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...