Chcete-li upustit jednotlivé nepojmenované výchozí omezení na sloupec, použijte následující kód:
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
Pokud to chcete udělat pro výchozí sloupec, který je pravděpodobně častější než původní otázka a jsem si jistý, že na to při vyhledávání Google přijde mnoho lidí, pak stačí změnit řádek:
obj.type = 'F'
do
obj.type = 'D'