我为person_name
创建了一个PostgreSQL复合数据类型,包括prefix
,first
,middle
,last
,suffix
和{ {1}}部分。
但是,我希望title
为last
NOT NULL
不支持。
我发现了一种解决方法 - 使用具有类型限制的域。 以下作品如下:
CREATE TYPE
有些问题:
CREATE DOMAIN text_required AS text NOT NULL;
CREATE TYPE person_name AS (
prefix text,
first text_required,
middle text,
last text,
suffix text,
title text
);
列而不是复合数据类型吗?如果是这样,我将如何约束它(验证它是一个对象,键存在,并且键jsonb
不为空)