Cannot drop a default constraint by DROP DEFAULT statement. Use ALTER TABLE to drop a constraint default.

Error Message:
Msg 3717, Level 16, State 1, Line 1
Cannot drop a default constraint by DROP DEFAULT statement. Use ALTER TABLE to drop a constraint default.

Severity level:
16.

Description:
This error message appears when you try to DROP a column-level DEFAULT constraint with a DROP DEFAULT statement.

Consequences:
The T-SQL statement can be parsed, but causes the error at runtime.

Resolution:
Error of the Severity Level 16 are generated by the user and can be fixed by the SQL Server user. You must use the ALTER TABLE statement to drop a column-level DEFAULT constraint.

Versions:
This error message was introduced with SQL Server 2005.

Example(s):
CREATE TABLE t
(
 c1 INT NOT NULL CONSTRAINT DF_c1 DEFAULT 0
)
GO
DROP DEFAULT DF_c1
GO
DROP TABLE t

Remarks:
There are two “types” of DEFAULTs. One, that are explictly created for a column of a table und one that are create on the database level via CREATE DEFAULT. You should refrain from using the CREATE/DROP DEFAULT statements. They will be removed in a future version of SQL Server.

]]>

Leave a comment

Your email address will not be published.