Postgres中varchar的最小和最大长度是多少?

9
在Postgres中,是否可以为varchar(25)字段设置最小长度?
这样我就可以在手动插入时防止意外添加无效值。
1个回答

24

您可以使用检查约束来实现此操作:

alter table the_table
  add constraint check_min_length check (length(the_column) >= 10);

你可能也想将该列定义为 非空


我知道这是一个旧答案,但我想知道你是否能帮忙 - 这似乎也防止对长度太短的现有行进行更改,有没有办法只将其应用于值/新条目的更新? - Jonathan Plackett
1
@JonathanPlackett 我不是你回复的那个人,但我认为你可以使用一个触发器函数来实现,该函数仅在INSERT和UPDATE时触发。这里有一些很好的例子 - Hrun
嗨 - 谢谢,触发器是我需要的东西! - Jonathan Plackett

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接