我创建了一个样本表,第一列定义为citext。
CREATE TABLE users (
nick CITEXT PRIMARY KEY,
pass TEXT NOT NULL
);
当我尝试执行以下查询以获取列名及其数据类型时,nick列的数据类型将返回为USER-DEFINED。
select column_name, data_type from information_schema.columns
where table_name = 'users';
column_name | data_type
1 nick | USER-DEFINED
2 pass | text
如果列缺口的类型为citext,我是否可以通过查询postgreSQL中的任何表来找到答案?
答案 0 :(得分:0)
您需要使用列udt_name
而不是data_type
:
create type compfoo AS (f1 int, f2 text);
create table compfoo_table (cp compfoo);
select udt_name from information_schema.columns where column_name = 'cp';
-- drop table compfoo_table;
-- drop type compfoo;