在PG数据库上新建表结构:
CREATE TABLE "public"."t_test" (
"guid" uuid NOT NULL DEFAULT uuid_generate_v4(),
"data" jsonb,
"create_time" timestamptz(6) DEFAULT now(),
CONSTRAINT "test_pkey" PRIMARY KEY ("guid")
);
报错:
ERROR: function uuid_generate_v4() does not exist
LINE 1: select uuid_generate_v4();
^
HINT: No function matches the given name and argument types.
You might need to add explicit type casts.
说明需要创建 uuid-ossp 扩展,执行命令
create extension "uuid-ossp";
这一步可能提示没有权限,那么需要更高权限的账号。
postgresql 官方文档说,如果只是使用随机的uuid, 建议使用 pgcrypto 扩展的 gen_random_uuid() 替代:
Note: If you only need randomly-generated (version 4) UUIDs, consider using the gen_random_uuid() function from the pgcrypto module instead.
– https://www.postgresql.org/docs/current/static/uuid-ossp.html
同样,创建扩展,然后使用命令
create extension "pgcrypto";
执行语句时可能会出现权限问题,扩展需要切换到权限高的账号创建。
欢迎关注公众号:慌途L
后面会慢慢将文章迁移至公众号,也是方便在没有电脑的情况下可以进行翻阅,更新的话会两边同时更新,大家不用担心!