DECLARE @ysName NVARCHAR(500) --约束名称
DECLARE @alertstr NVARCHAR(2000) --删除约束的语句
SET @ysName =(SELECT c.name from sysconstraints a
inner join syscolumns b on a.colid=b.colid
inner join sysobjects c on a.constid=c.id
where a.id=object_id('S_UI_List') --S_UI_List 为表的名称
and b.name='TableAttr' AND b.id = object_id('TableAttr')
AND b.cdefault!=0 ) --TableAttr 为字段的名称
IF(@ysName IS NOT NULL) --如果存在约束,那么久删除约束
BEGIN
SET @alertstr ='alter table S_UI_List drop constraint '+@ysName --得到删除约束的语句
EXEC sp_executesql @alertstr --执行删除约束的语句
END
alter table S_UI_List add default ('') for TableAttr with VALUES --重新创建新的约束
sql 删除已有默认值并重新创建
于 2022-09-14 14:36:27 首次发布