Aby usunąć pojedyncze nienazwane domyślne ograniczenie w kolumnie, użyj następującego kodu:
DECLARE @ConstraintName VARCHAR(256)
SET @ConstraintName = (
SELECT obj.name
FROM sys.columns col
LEFT OUTER JOIN sys.objects obj
ON obj.object_id = col.default_object_id
AND obj.type = 'F'
WHERE col.object_id = OBJECT_ID('TableName')
AND obj.name IS NOT NULL
AND col.name = 'ColunmName'
)
IF(@ConstraintName IS NOT NULL)
BEGIN
EXEC ('ALTER TABLE [TableName] DROP CONSTRAINT ['[email protected]+']')
END
Jeśli chcesz to zrobić dla domyślnej kolumny, która jest prawdopodobnie bardziej powszechna niż oryginalne pytanie i jestem pewien, że wiele osób trafi na to z wyszukiwarki Google, po prostu zmień wiersz:
obj.type = 'F'
do
obj.type = 'D'