1.创建一个复合类型,重命名复合类型,为复合类型增加属性、删除属性
CREATE TYPE test_type AS (t1 int, t2 text,name varchar(10));
ALTER TYPE test_type RENAME TO test_type_01;
\d test_type_01
ALTER TYPE test_type_01 ADD ATTRIBUTE t3 int;
\d test_type_01
ALTER TYPE test_type_01 drop ATTRIBUTE name;
\d test_type_01
2.创建一个枚举类型,新增标签值,重命名标签值
CREATE TYPE test_enum AS ENUM ('select', 'delete', 'update');
select * from pg_enum;
ALTER TYPE test_enum ADD VALUE IF NOT EXISTS 'ommUser' BEFORE 'update';
ALTER TYPE test_enum RENAME VALUE 'select' TO 'createTable';
select * from pg_enum;
3.使用新创建的类型创建表
CREATE TABLE test_type_tb(a int, b test_type_01);
INSERT INTO test_type_tb values(1,(1,'test_type',100));
SELECT * FROM test_type_tb;
4.删除类型
drop table test_type_tb;
DROP TYPE test_type_01 cascade;
drop type test_enum;