【发布时间】:2026-01-25 08:50:01
【问题描述】:
我创建了如下类型。
create type test_typ as (id int, nam text, age int);
我创建了一个 test_typ 类型的数组,并尝试为每个元素分配值,如下所示
do
$$
declare
tt test_typ[];
begin
tt[1].id = 1;
tt[1].nam = 'sds';
tt[1].age = 23;
end;
$$
language plpgsql;
执行上述操作时出现语法错误。但是当我执行以下操作并尝试打印tt[1].id 时,它会正确打印该值。
do
$$
declare
tt test_typ[];
begin
tt[1] := (1,'sds',23);
raise notice '%', tt[1].id;
end;
$$
language plpgsql;
如果我尝试相同的方式打印,为什么没有分配tt[1].id、tt[1].nam、tt[1].age?
【问题讨论】:
标签: postgresql