CREATE TYPE 语句
CREATE TYPE 语句用于在 catalog 中定义新类型。
示例
创建简单 ENUM 类型:
CREATE TYPE mood AS ENUM ('happy', 'sad', 'curious');
创建简单 STRUCT 类型:
CREATE TYPE many_things AS STRUCT(k INTEGER, l VARCHAR);
创建简单 UNION 类型:
CREATE TYPE one_thing AS UNION(number INTEGER, string VARCHAR);
创建类型别名:
CREATE TYPE x_index AS INTEGER;
语法
CREATE TYPE 子句定义 Goose 实例可用的新数据类型。
这些新类型可通过 goose_types 表查看。
限制
-
无法仅通过 SQL 扩展类型以支持自定义运算符(如 PostgreSQL 的
&&)。 需要添加额外 C++ 代码,可通过编写扩展实现。 -
CREATE TYPE子句不支持OR REPLACE修饰符。