_text postgres 数据类型
_text postgres data type
我得到一个 table 类型为 _text
create table mt ( id int8,
directions _text null)
这不是我的代码,所以我不知道什么是 _text 类型以及如何使用它。
我在文档中寻找它 https://www.postgresql.org/docs/11/datatype.html
但是我没有找到。
我的问题是有人在 postgresql 中使用 _text 吗?我需要一个例子。
这是数组的内部类型名称。类似于 int8
是 bigint
的内部名称。
所以你的说法是一样的:
create table mt
(
id bigint,
directions text[]
)
我再也找不到引用了,但原因是 []
在标识符中无效(类型名称 是 标识符)并且因此数组类型在 pg_type
中用 _
前缀标识
这可以通过 pg_type 系统目录检测到:
select bt.typname as base_type,
at.typname as array_type
from pg_type bt
join pg_type at on bt.typarray = at.oid
where bt.typnamespace = 'pg_catalog'::regnamespace
order by bt.typname
pg_type.typarray
链接到包含基本类型的数组类型的 pg_type 行。
Laurenz 在 Database Administrators 上回答了一个类似的问题,并提供了更多技术见解。
我得到一个 table 类型为 _text
create table mt ( id int8,
directions _text null)
这不是我的代码,所以我不知道什么是 _text 类型以及如何使用它。 我在文档中寻找它 https://www.postgresql.org/docs/11/datatype.html 但是我没有找到。
我的问题是有人在 postgresql 中使用 _text 吗?我需要一个例子。
这是数组的内部类型名称。类似于 int8
是 bigint
的内部名称。
所以你的说法是一样的:
create table mt
(
id bigint,
directions text[]
)
我再也找不到引用了,但原因是 []
在标识符中无效(类型名称 是 标识符)并且因此数组类型在 pg_type
_
前缀标识
这可以通过 pg_type 系统目录检测到:
select bt.typname as base_type,
at.typname as array_type
from pg_type bt
join pg_type at on bt.typarray = at.oid
where bt.typnamespace = 'pg_catalog'::regnamespace
order by bt.typname
pg_type.typarray
链接到包含基本类型的数组类型的 pg_type 行。
Laurenz 在 Database Administrators 上回答了一个类似的问题,并提供了更多技术见解。