我有一列,最小长度为2个字符。我添加了一个约束。但是,根据需要允许有空格。 SQL Server不允许我使用此约束插入空格。
我尝试使用DATALENGTH作为约束而不是LEN,但我认为DATALENGTH是Oracle语法。
create table temp (field varchar(10));
ALTER TABLE temp WITH CHECK
ADD CONSTRAINT [CK_FIELD_MIN_LENGTH_MIN_2] CHECK ((len([field])>=(2)))
当我尝试插入空格时出现错误。
INSERT INTO temp values (' ');
错误:INSERT语句与CHECK约束冲突 “ CK_FIELD_MIN_LENGTH_MIN_2”。数据库中发生了冲突 “ EDIX125010”,表“ dbo.temp”,列“字段”。
如何满足最小字符数和允许空格的要求?
我不认为这是重复的,因为其他示例用于SELECT语句(试图检索数据)。我的问题是关于INSERT INTO。