Postgresql 生成UUID

postgresql 生成uuid

> select uuid_generate_v4();
           uuid_generate_v4
--------------------------------------
 6088c013-a45d-4b68-b70f-2b290388160d
(1 row)

如果提示

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";
CREATE EXTENSION

这一步可能提示没有权限,那么需要更高权限的账号。

postgresql 官方文档说,如果只是使用随机的uuid,建议使用pgcrypto扩展的gen_random_uuid()替代:

Note:If you only need randomly-generated (version 4) UUIDs,consider using thegen_random_uuid()function from thepgcryptomodule instead.

-- https://www.postgresql.org/docs/current/static/uuid-ossp.html

同样,创建扩展,然后使用命令

> create extension "pgcrypto";
CREATE EXTENSION
> select gen_random_uuid();
           gen_random_uuid            
--------------------------------------
 f7d44f9a-3118-40b4-bde5-3dc964f78994
(1 row)

>

可能会有权限问题,扩展需要切换到权限高的账号创建。

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...