Hoo*_*pes 3 postgresql datatypes postgresql-12
我想知道是否可以(和/或可取)创建对值进行约束的自定义类型。假设我有一个高度/宽度/长度的自定义类型:
CREATE TYPE dimensions AS (w float, h float, l float);
我想确保我的宽度都不大于 10(例如)。
这样的事情可能吗,或者我会更好地在使用这种类型的每个表上创建检查约束吗?我希望能够在单个位置(即类型本身)添加/编辑约束。
谢谢!
小智 5
您可以根据您的类型创建域。
create domain checked_dimensions
as dimensions
constraint check_size check ( (value).w <= 10 );
Run Code Online (Sandbox Code Playgroud)
请注意关键字周围的括号value。它们看起来多余,但在本例中是必需的。
然后使用该类型checked_dimensions作为您的列类型
| 归档时间: |
|
| 查看次数: |
801 次 |
| 最近记录: |