Для зберігання 128-бітного UUID існує кілька варіантів зберігання:
- байт [16]
- два стовпчики bigint / long (64 біт)
- стовпець CHAR (36) - 32 шістнадцяткових цифр + 4 тире.
- стовпець бази даних UUID, якщо db підтримує його
З точки зору індексації, хто з них є найбільш ефективним? Якщо db не підтримує виділений тип uuid, який із 1, 2, 3 є найкращими кандидатами?
raw(16)
в Oracle і uuid
в PostgreSQL.
uuid
>> bytea
>> text
з CHECK
обмеженням> varchar(36)
>> char(36)
. Дивіться: dba.stackexchange.com/a/89433/3684 та dba.stackexchange.com/a/115316/3684 .