我在SQL中有一个列,我需要添加一个额外的检查约束。目前该列设置为,
PropType Varchar(23) Check(PropType In('Potential Property','Vacant Property','Work-In-Progress-Property','Sold Property','Rental Property'))Not Null;
使用这个alter语句,我试图将字符数限制更改为50,并添加一个额外的检查数字'空置属性,正在进行的工作 - 属性',
alter table property
alter column PropType Varchar(50) Check(PropType In('Potential Property','Vacant Property','Work-In-Progress-Property','Vacant Property,Work-In-Progress-Property','Sold Property','Rental Property'))Not Null;
我收到此错误,
第15行,第1行,第2行 关键字“检查”附近的语法不正确。
有谁知道为什么?这实际上是我用来制作表格的完全相同的语句,除了它使用50个字符并且有一个额外的检查数字。我在检查前尝试使用“添加约束”,但我没有运气。
答案 0 :(得分:1)
alter table property alter column PropType Varchar(50) NOT NULL;
alter table property add Check(PropType In('Potential Property','Vacant Property','Work-In-Progress-Property','Vacant Property,Work-In-Progress-Property','Sold Property','Rental Property'));
答案 1 :(得分:0)
尝试修改 :::
alter table property MODIFY column PropType Varchar(50) Check(PropType In('Potential Property','Vacant Property','Work-In-Progress-Property','Vacant Property,Work-In-Progress-Property','Sold Property','Rental Property'))Not Null;