You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过pgAdmin GUI在PostgreSQL中创建UUIDv7类型的主键列

如何通过pgAdmin GUI在PostgreSQL中创建UUIDv7类型的主键列

嘿,我最近刚好在PostgreSQL 18里用pgAdmin折腾过UUIDv7主键,确实pgAdmin目前还没专门加个下拉选项让你直接选UUIDv7,但用GUI完全能搞定,给你两种简单的实现方法:

方法一:通过表设计器一步步配置

这适合给现有表加列,或者创建新表时设置:

  • 打开pgAdmin,找到你要操作的表,右键点击它,选择「设计表」(Design Table);如果是创建新表,就右键点击「表」选择「创建」→「表」
  • 切换到「列」标签页,点击左上角的「+」按钮添加新列
  • 填写列名(比如profile_id),数据类型选uuid
  • 勾选「不为空」(Not Null)选项——毕竟是主键,不能为空
  • 关键步骤:找到「默认值」输入框,直接手动输入uuidv7(),注意别加引号,这会让PostgreSQL自动用UUIDv7函数生成默认值
  • 切换到「约束」标签页,点击「+」按钮选择「主键」,在弹出的窗口里把刚创建的profile_id列选进去,确认保存
  • 最后点击表设计器右下角的「保存」,所有修改就生效了

方法二:用pgAdmin的查询工具直接执行SQL(更快捷)

如果觉得设计器步骤有点绕,直接用pgAdmin自带的查询工具写SQL更高效:

  • 右键点击你的目标数据库,选择「查询工具」(Query Tool)
  • 在编辑器里输入这段SQL(把your_table_name换成你实际的表名):
ALTER TABLE your_table_name
ADD COLUMN profile_id UUID PRIMARY KEY DEFAULT uuidv7();
  • 点击工具栏上的播放图标(执行按钮),跑完就搞定了

小验证技巧

你可以执行下面的SQL确认生成的是UUIDv7:

-- 检查某条记录的UUID是否为v7
SELECT uuid_is_v7(profile_id) FROM your_table_name LIMIT 1;

如果返回t(true),就说明是正确的UUIDv7格式啦。

其实核心就是pgAdmin的界面更新没跟上PostgreSQL 18的新特性,但直接调用uuidv7()函数是完全支持的,不用纠结有没有可视化选项~

火山引擎 最新活动