UUID (Universally Unique Identifier) — это универсальный уникальный идентификатор, используемый в PostgreSQL. UUID представляет собой строку из 32 шестнадцатеричных цифр, гарантируя уникальность идентификаторов.
Использование UUID в таблицах
Создание таблицы с UUID в качестве первичного ключа (с автоматической генерацией значений):
CREATE TABLE users (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
username VARCHAR(50) NOT NULL
);
Также можно создавать таблицы без автоматической генерации UUID:
CREATE TABLE products (
id UUID PRIMARY KEY,
product_name VARCHAR(100)
);
В этом случае UUID указывается явно при вставке:
INSERT INTO products (id, product_name)
VALUES ('550e8400-e29b-41d4-a716-446655440000', 'Laptop');
Генерация UUID вручную
Для генерации случайного UUID используется встроенная функция:
SELECT gen_random_uuid();
Применение UUID в запросах
Пример поиска по UUID:
SELECT * FROM users WHERE id = '550e8400-e29b-41d4-a716-446655440000';
Использование UUID упрощает работу с уникальными идентификаторами и идеально подходит для приложений, которым необходима глобальная уникальность данных, например, распределённых систем или проектов с высоким уровнем сложности.