PostgreSQL:如何在复合类型的基类型中使用约束

时间:2017-06-28 14:28:08

标签: sql postgresql sqldatatypes

我为person_name创建了一个PostgreSQL复合数据类型,包括prefixfirstmiddlelastsuffix和{ {1}}部分。 但是,我希望titlelast NOT NULL不支持。

我发现了一种解决方法 - 使用具有类型限制的域。 以下作品如下:

CREATE TYPE

有些问题:

  1. 以上是推荐的方法来实现具有列限制的复合数据类型还是有更好的方法?
  2. 为此,我会更好地使用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不为空)

0 个答案:

没有答案