我是 SQL 新手,所以如果这个问题很愚蠢,请原谅。
我正在谷歌搜索“如何在 postgresql 中创建类型别名?” 答案似乎都进入了表格类型,以及对于我想做的事情来说太过分的东西。
我需要 PostgreSQL 的版本:
#define t_my_int int
Run Code Online (Sandbox Code Playgroud)
这样做的动机是我的许多表具有相同的字段名称,例如 my_field,并且它们都是 VARCHAR(X) 类型,其中 X 是随机数。我想让我的所有 my_field 都相同。例如,所有 VARCHAR(100)。
我怎么做?
小智 5
域是一种解决方案:
create domain name_type as varchar(100);
Run Code Online (Sandbox Code Playgroud)
然而,使用这样的域有一个严重的限制:一旦定义了它,就不能再更改数据类型。所以你不能增加最大长度。
避免这种情况的一种方法是使用无界类型,并使用检查约束来验证长度
create domain name_type as text
constraint check_name_length
check (length(value) <= 100);
Run Code Online (Sandbox Code Playgroud)
可以删除检查约束并使用不同的条件重新创建。
| 归档时间: |
|
| 查看次数: |
297 次 |
| 最近记录: |