openGauss每日一练第12天 | 定义数据类型

0 阅读1分钟

openGauss 每日一练第 12 天打卡,我来了!又可以学习,真开心~

学习

今天第 12 课,学习openGauss定义数据类型。

课后作业打卡

1、创建一个复合类型,重命名复合类型,为复合类型增加属性、删除属性

create type lucifer_type as (a int,b char(20));
alter type lucifer_type rename to lucifer_tp;
alter type lucifer_tp add attribute c int;
alter type lucifer_tp drop attribute a;
\d lucifer_tp

2、创建一个枚举类型,新增标签值,重命名标签值

create type lucifer_mj as enum ('a','b','c');
select * from pg_enum;
alter type lucifer_mj add value if not exists 'd' before 'c';
alter type lucifer_mj rename value 'd' to 'e';

3、使用新创建的类型创建表

create table lucifer (id int,name lucifer_tp,type lucifer_mj);
insert into lucifer values (1,('a',1),'a');
insert into lucifer values (2,('b',2),'b');
insert into lucifer values (2,('b',2));
insert into lucifer values (3,('c',3));
select * from lucifer;
select id,(name).b,type from lucifer;

4、删除类型

drop type lucifer_tp cascade;
drop type lucifer_mj cascade;

写在最后

今天的作业打卡结束!🎉


📚 推荐阅读:DBA 学习之路

如果这篇文章对你有帮助,推荐访问我的 Oracle DBA 系统学习站点,涵盖 100 天完整学习路线:

  • 🔧 Oracle 安装部署 · RMAN 备份恢复 · Data Pump 数据迁移
  • 🏗️ RAC 高可用 · DataGuard 容灾 · 多租户架构
  • 🔍 故障排查 · 升级迁移 · GoldenGate 数据同步

👉 立即访问 ora100.com →