运行此SQL时出现function get_random_uuid() does not exist
错误:
ALTER TABLE "posts" ALTER COLUMN "id" SET DEFAULT gen_random_uuid()
我可以看到此查询pgcrypto
中列出的select * from pg_available_extensions;
模块。我在Ubuntu 14.04上使用PostgreSQL 9.4.5。
我错过了什么吗?
答案 0 :(得分:11)
您需要使用
在当前数据库/架构中加载pgcrypto扩展CREATE EXTENSION pgcrypto;
答案 1 :(得分:2)
如果你想访问gen_random_uuid()或PostgreSQL中任何uuid类型的特定数据库,你必须定义public实例名!如果找不到 public 实例名称,您可以选择 pgcrypto -> Properties -> Definition
public.gen_random_uuid()
如果你在 schema.prisma 中使用,你可以像这样使用
@id @default(dbgenerated("public.uuid_generate_v4()"))
答案 2 :(得分:0)
首先,它是gen_random_uuid()
,而不是get_random_uuid()