Недавно я узнал о том, как определяются отношения в базе данных на работе, и мне было интересно, является ли это стандартной практикой.
Допустим, у нас есть два процесса: процесс A и процесс B. Процесс B зависит от результатов процесса A, поэтому необходимо определить взаимосвязь между запуском процесса B и процессом A. Вот как определяются отношения:
TableProcessA:
Id
а также
TableProcessB:
Id
ProcessAId
Теперь, до этого момента, вещи имеют смысл для меня, но потом все становится немного странным для меня и моего понимания дизайна стола. Всякий раз, когда в TableProcessA или TableProcessB создается строка, вызывается функция, которая создает глобально уникальный идентификатор для каждого. Таким образом, в основном, все поля Id в TableProcessA и TableProcessB не будут содержать совпадений, потому что идентификаторы не только уникальны для своей таблицы, но и для всей базы данных.
У меня вопрос, насколько это стандартно? Я был воспитан на мысли, что каждая таблица должна просто иметь автоинкрементный идентификатор, который уникален только для таблицы, а не для всей базы данных.