PostgreSQL UUID类型

在本节中,我们将了解PostgreSQL UUID 数据类型的工作原理。我们还看到了UUID 数据类型的示例,我们还看到了一些如何在提供的模块的帮助下创建 UUID 值。

什么是 PostgreSQL UUID 数据类型?

在 PostgreSQL 中,下一个数据类型是Universally Unique Identifier,也称为RFC 4122和另一个相关标准指定的UUID 。

UUID值是由算法创建的128 位长值,借助类似的算法来识别信息,使其在已知宇宙中具有唯一性。

让我们看一些 UUID 值的示例示例,如下图所示:

6ecd8c99-4036-403d-bf84-cf8400f67836  
c81d4e2e-bcf2-11e6-869b-7df92533d2db  
237e9877-e79b-12d4-a765-321741963000   

正如我们在上面的示例中看到的,UUID 是32 位十六进制数字以及四个连字符 (-) 的排列。UUID 可能为nil,其中所有位都设置为零。

我们经常识别分布式系统中的 UUID,因为它具有独特的功能。与在单个数据库中创建唯一值的 PostgreSQL SERIAL 数据类型相比,它还确保了更好的个性。

如何在 PostgreSQL 中创建 UUID 值

PostgreSQL 使我们能够存储和等同 UUID 值,但它不包含函数,并在其核心中创建 UUID 值。

而不是依赖于提供特定算法来创建 UUID的第三方模块,例如uuid-ossp模块包含一些可访问的函数,这些函数执行用于创建 UUID 的标准算法。

我们将使用以下CREATE EXTENSION命令在Javatpoint数据库中安装uuid-ossp模块。

CREATE EXTENSION IF NOT EXISTS "uuid-ossp";  

执行上述命令后,我们将得到以下消息:uuid_ossp已使用创建扩展命令成功安装。

我们在上面的命令中使用了IF NOT EXISTS子句,这使我们可以避免重新安装模块。

我们可以使用uuid_generate_v1() 函数根据当前时间戳、计算机 MAC 地址的分组和随机值来创建 UUID 值:

SELECT uuid_generate_v1();  

我们将在执行上述命令时得到以下结果,其中显示了uuid_generate_v1() 函数创建的 UUID 值。

在以下命令中,我们将使用uuid_generate_v4()函数创建一个唯一依赖于随机数的 UUID 值:

SELECT uuid_generate_v4();  

成功执行上述命令后,我们将得到以下结果,其中显示了uuid_generate_v1() 函数创建的 UUID 值。

热门文章

优秀文章