在 PostgreSQL 中,UUID 类型用于存储 UUID 值,主要有两个相关的类型:uuid 和 uuid-ossp 扩展。
1. uuid 类型: PostgreSQL 提供了内建的 uuid 类型,可以用于存储 UUID 值。
-- 例如,表示一个 UUID
'123e4567-e89b-12d3-a456-426614174001'::uuid
2. uuid-ossp 扩展: PostgreSQL 提供了一个名为 uuid-ossp 的扩展,它包含了一些函数,用于生成和操作 UUID。
- 生成 UUID:
-- 生成一个随机 UUID
SELECT uuid_generate_v4();
上述语句使用 uuid-ossp 扩展的 uuid_generate_v4 函数生成一个随机的 UUID。
- 引入扩展:
-- 在数据库中引入 uuid-ossp 扩展
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
这个语句用于在数据库中引入 uuid-ossp 扩展,使得相关的函数可用。
在实际应用中,UUID 通常用于唯一标识数据库表中的记录,以确保在分布式系统中生成的唯一标识符。使用 UUID 能够避免在多个系统中生成相同的标识符的可能性。
以下是一个示例,演示如何在 PostgreSQL 中使用 UUID 类型:
-- 创建包含 UUID 列的表
CREATE TABLE my_table (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
name VARCHAR(255)
);
-- 插入数据
INSERT INTO my_table (name) VALUES
('John'),
('Jane');
-- 查询数据
SELECT * FROM my_table;
在上述示例中,创建了一个包含 id 和 name 列的表,其中 id 列使用 UUID 类型,并通过 uuid_generate_v4() 函数设置为默认值,以生成随机的 UUID。
转载请注明出处:http://www.zyzy.cn/article/detail/8160/PostgreSQL