作者:jiuye | 来源:互联网 | 2024-12-20 15:29
自己安装的openGauss环境启动openGaussgsctlDgaussdatadb1start登录openGaussgsqldpostgresp26000r1.创建一
自己安装的openGauss环境
启动openGauss
gs_ctl -D /gauss/data/db1/ start
登录openGauss
gsql -d postgres -p 26000 -r
1.创建一个复合类型,重命名复合类型,为复合类型增加属性、删除属性
CREATE TYPE compfoo_hc1 AS (f1 int, f2 text);
alter TYPE compfoo_hc1 rename to compfoo_hc2;
ALTER TYPE compfoo_hc2 ADD ATTRIBUTE f3 int;
\d+ compfoo_hc2
ALTER TYPE compfoo_hc2 drop ATTRIBUTE f1;
\d+ compfoo_hc2
2.创建一个枚举类型,新增标签值,重命名标签值
CREATE TYPE test_type1 AS ENUM (‘create’, ‘modify’, ‘closed’);
ALTER TYPE test_type1 ADD VALUE IF NOT EXISTS ‘regress’ BEFORE ‘closed’;
ALTER TYPE test_type1 RENAME VALUE ‘create’ TO ‘new’;
select * from pg_enum;
3.使用新创建的类型创建表
CREATE TABLE t1_hc(a test_type1, b compfoo_hc2);
INSERT INTO t1_hc values(‘new’,((‘demo’),3));
SELECT * FROM t1_hc;
4.删除类型
drop table t1_hc;
drop type compfoo_hc2;
drop type test_type1;