Скажем, у меня есть адресная таблица с адресами разных объектов производственной компании. Иностранный ключ позволяет мне узнать, к какой компании принадлежат адреса, но мне нужен суррогатный идентификатор, чтобы различать каждый объект. Этот идентификатор должен автоматически увеличиваться в зависимости от значения внешнего ключа. Примечание: мне просто нужны простые целочисленные значения для ключей.Есть ли способ автоматического увеличения столбца относительно внешнего ключа в DB2?
например:
Моя таблица содержит следующие столбцы, ORGANIZATION_ID является внешним ключом. FACILITY_ID - это второй суррогатный ключ, зависящий от внешнего ключа.
ADDRESS_TABLE
->ORGANIZATION_ID
->FACILITY_ID
->ADDRESS_LINE_1
->ADDRESS_LINE_2
->CITY
->STATE
->ZIP_CODE
Я хочу, чтобы объект идентификатор автоматически увеличится с 1 в зависимости от организации ид. т.е.
ORGANIZATION_ID 1
FACILITY_ID 1
Когда я ввожу данные для новой организации, объект должен начать с 1
ORGANIZATION_ID 2
FACILITY_ID 1
В следующий раз я вставить данные для одной и той же организации, мой объект идентификатор должен увеличиваться соответственно -
ORGANIZATION_ID 1
FACILITY_ID 2
Есть ли способ сделать это в DB2? В настоящее время я нахожусь в DB2 V 10.5.6
@ Esperento57 Я обновил свой вопрос еще раз. Я размещал это между моим жестким графиком. Извините за ошибки. – Ash
Зачем вам это делать? Просто создайте автоинкремент столбца на вашей таблице ADDRESS_TABLE в качестве первичного ключа, у вас должен быть первичный ключ на всех ваших таблицах. Его достаточно для единства и целостности – Esperento57