在Oracle db中,我们有一个列类型为varchar2的表(例如,用户名)。如何设置此列的确切(或至少最小)长度?因此,插入到此表中的所有用户名的长度只能为10个字符(或必须至少为10个字符)。
发布于 2010-07-28 23:05:12
您可以使用check约束:
CREATE TABLE mytable (
mycolumn varchar2(50),
constraint strlen check (length(mycolumn) > 2)
)或者类似的东西。不过,我不确定这有多好。
发布于 2010-07-29 02:11:29
或者只是为了好玩,
CREATE TABLE testit
( mycolumn VARCHAR2(20) CONSTRAINT min_length_chk CHECK (mycolumn LIKE '__%') );不过,它没有LENGTH()方法那么明确,所以我不确定是否推荐它,除非是为了解决相关问题。
https://stackoverflow.com/questions/3354185
复制相似问题