我使用的是PostgreSQL 14.4版本。我安装了uuid-ossp
扩展。
我创建了一个这样的表格:
CREATE TABLE reserved_words
ADD id uuid NOT NULL DEFAULT uuid_generate_v1()
ADD word NOT NULL varchar(20);
不幸的是,当我尝试添加一个新记录,而不是生成一个新的UUID时,将"uuid_generate_v1()“字符串作为id
添加!
我已经浏览过互联网,但无法找到如何修改内容,从而使函数本身得到执行。有什么想法吗?
发布于 2022-07-05 14:58:16
我很抱歉,这真的很管用。正在发生的事情是,在DB客户机I用户DBeaver中,它首先显示UUID生成函数,但在保存新记录时,它正确地创建了UUID。
注意:我并不真正理解uuid_generate_v1
和uuid_generate_v4
之间的区别,但我将选择使用后者。
发布于 2022-07-05 15:04:49
uuid_generate_v1 () → uuid
生成版本1的UUID。这涉及到计算机的MAC地址和时间戳。请注意,这类UUID显示了创建标识符的计算机的身份以及创建标识符的时间,这可能使其不适合某些安全敏感应用程序。
uuid_generate_v4 () → uuid
生成一个版本4的UUID,它完全来自随机数。
发布于 2022-08-02 15:18:15
最重要的一点是数据类型应该是uuid
。
‘UUID’扩展提供了生成UUID值的函数。
要将扩展添加到数据库中,请运行以下命令
CREATE EXTENSION "uuid-ossp";
您可以使用核心函数gen_random_uuid()生成version-4 UUID。
若要在“海狸”中使用此功能,请执行以下步骤:
1.转到要生成UUID的表
2.在表属性选项卡中,找到需要应用uuid函数的列。
3.双击列名,它将显示其属性的扩展视图
4.在该特定列属性的默认值下,编写函数名,如图像gen_random_uuid()所示
https://stackoverflow.com/questions/72871298
复制相似问题