Я должен добавить новую таблицу в соответствии с некоторыми новыми требованиями, модель в настоящее время состоит из двух таблиц: DETAIL
и SUMMARY
.
Отношение заключается в том, что каждая деталь связана с одной сводкой, поэтому теперь мне нужно добавить новую таблицу с именем SUMMARY_ESP
, в которой есть FK ( SUMMARY)
и еще два столбца, что-то вроде этого:
ID | SUMMARY_ID | ESP_ID | PRIORITY_ESP | PTY_ID | PRIORITY_PTY
1 | 123 | 34 | 1 | 122 | 1
2 | 123 | 35 | 2 | 111 | 2
3 | 123 | 30 | 3 | null | null
4 | 1111 | 34 | 4 | null | null
Информация о других таблицах:
DETAIL TABLE
ID_DET | AMOUNT | DATE | ID_SUMMARY | EXTERNAL_ID
1 | 1000 | 14/05/2018 | 1111 | 4
2 | 2000 | 18/07/2016 | 1111 | 4
3 | 1200 | 11/07/2017 | 123 | 1
4 | 1300 | 21/09/2018 | 123 | 2
SUMMARY TABLE
ID_SUMMARY | PRIORITY| PROFILE | CLASS | AREA
123 | 1 | 1 | 5 | 3
1111 | 2 | 1 | 5 | 3
33 | 3 | 2 | 5 | 9
4 | 4 | 8 | 5 | 10
Таким образом, в соответствии с этим SUMMARY_ID
, ESP_ID
и PTY_ID
уникальны, в какой-то момент нужно знать, что такое ESP_ID
определенных деталей, но поскольку связь с SUMMARY
Таблица, я не знаю, какой был, когда он был добавлен, поэтому мне было предложено создать новый столбец для таблицы DETAIL
с именем EXTERNAL_ID
, чтобы я мог знать, что код из SUMMARY_ESP
.
Так что, если строка является первой, это может быть либо 24
, либо 122
в новом столбце в соответствии с некоторой предыдущей логикой, но я беспокоюсь о последствиях, которые это может иметь в будущем, потому что каким-то образом Я мог бы дублировать информацию, также мне нужно было бы сделать некоторую странную логику, чтобы получить приоритет в зависимости от того, ESP_ID
или PTY_ID
.
Новая таблица вместе с SUMMARY
каким-то образом являются таблицей параметров, их значения меняются не так часто, и меняется только столбец PRIORITY
, вместо этого DETAIL
является более транзакционным, и он ежедневно вставляется и обновляется в соответствии с немного бизнес-логики.
Я думал о добавлении идентификатора новой таблицы в виде FK в таблицу DETAIL
, но в конце будет то же самое, потому что будет трудно поддерживать, а обновление будет сложнее, также это похоже на круговая зависимость, так что я как бы застрял с этим, так что любая помощь будет действительно полезна, ниже полной модели, с текущей идеей.
Также я не могу добавить эти новые столбцы в таблицу SUMMARY
, потому что в одной и той же таблице может быть несколько связанных с одним и тем же кодом, и, поскольку это PK, я не могу добавить две строки с одним и тем же кодом.