Я боролся с этим для системы распределенной базы данных, которую я разработал, все проблемы исчезли, когда я переключился на использование GUID в качестве основных уникальных идентификаторов.Я очень рекомендую их.Вы не только точно идентифицируете идентификаторы в пределах одной области данных определения ключа, но и поймете, что у вас могут быть универсальные таблицы, ссылающиеся на несколько доменов.
Я также научился не полагаться на бизнес-данные для истинногоуникальный ключ в базе данных, клиенты думают, что эти ключи уникальны, но всегда есть случаи, когда они хотят изменить их, и во многих случаях возникает неопределенная ситуация.