gpt4 book ai didi

arrays - 将数据插入 postgresql 中表的用户定义类型元素

转载 作者:行者123 更新时间:2023-11-29 11:44:23 25 4
gpt4 key购买 nike

我定义了3种类型如下:

CREATE TYPE EventDescriptionType AS ENUM (
'felt report',
'Flinn-Engdahl region',
'local time',
'tectonic summary',
'nearest cities',
'earthquake name',
'region name'
);

CREATE TYPE ResourceReference AS (
"resourceID" varchar(255)
);

CREATE TYPE EventDescription AS (
"text" text,
"type" EventDescriptionType
);

我还创建了一个包含上述类型元素的表格:

CREATE TABLE Event (
"Event_id" serial PRIMARY KEY,
"description" EventDescription ARRAY
);

然后,在通过这个命令向这个表中插入一些数据之后:

insert into Event values (1,'{'L','felt report'}');

我遇到了这个错误:

ERROR: syntax error at or near "L"
LINE 1: insert into Event values (1,'{'L','felt report'}');

对于事件表中的元素“description”,我分别将“1”作为 event_id 和“L”和“felt report”传递给 EventDescription 类型的“text”和“type”数组。

有人可以告诉我正确的方法吗?任何帮助,将不胜感激。

最佳答案

您需要将数组类型转换为 EventDescription[]

insert into Event values (1,
ARRAY[('L','felt report')]::EventDescription[]
);

sqlfiddle

关于arrays - 将数据插入 postgresql 中表的用户定义类型元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51220494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com