Skip to content

Latest commit

 

History

History
94 lines (74 loc) · 4.12 KB

drop-default-transact-sql.md

File metadata and controls

94 lines (74 loc) · 4.12 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic f1_keywords helpviewer_keywords dev_langs
DROP DEFAULT (Transact-SQL)
DROP DEFAULT (Transact-SQL)
markingmyname
maghan
05/10/2017
sql
t-sql
reference
DROP_DEFAULT_TSQL
DROP DEFAULT
DROP DEFAULT statement
defaults [SQL Server], removing
TSQL

DROP DEFAULT (Transact-SQL)

[!INCLUDE SQL Server]

Removes one or more user-defined defaults from the current database.

Important

DROP DEFAULT will be removed in the next version of [!INCLUDEmsCoName] [!INCLUDEssNoVersion]. Do not use DROP DEFAULT in new development work, and plan to modify applications that currently use them. Instead, use default definitions that you can create by using the DEFAULT keyword of ALTER TABLE or CREATE TABLE.

:::image type="icon" source="../../includes/media/topic-link-icon.svg" border="false"::: Transact-SQL syntax conventions

Syntax

DROP DEFAULT [ IF EXISTS ] { [ schema_name . ] default_name } [ ,...n ] [ ; ]  

Arguments

IF EXISTS
Applies to: [!INCLUDEssNoVersion] ( [!INCLUDEsssql16-md] through current version).

Conditionally drops the default only if it already exists.

schema_name
Is the name of the schema to which the default belongs.

default_name
Is the name of an existing default. To see a list of defaults that exist, execute sp_help. Defaults must comply with the rules for identifiers. Specifying the default schema name is optional.

Remarks

Before dropping a default, unbind the default by executing sp_unbindefault if the default is currently bound to a column or an alias data type.

After a default is dropped from a column that allows for null values, NULL is inserted in that position when rows are added and no value is explicitly supplied. After a default is dropped from a NOT NULL column, an error message is returned when rows are added and no value is explicitly supplied. These rows are added later as part of the typical INSERT statement behavior.

Permissions

To execute DROP DEFAULT, at a minimum, a user must have ALTER permission on the schema to which the default belongs.

Examples

A. Dropping a default

If a default has not been bound to a column or to an alias data type, it can just be dropped using DROP DEFAULT. The following example removes the user-created default named datedflt.

USE AdventureWorks2022;  
GO  
IF EXISTS (SELECT name FROM sys.objects  
         WHERE name = 'datedflt'   
            AND type = 'D')  
   DROP DEFAULT datedflt;  
GO  

Beginning with [!INCLUDEsssql16-md] you can use the following syntax.

DROP DEFAULT IF EXISTS datedflt;  
GO  

B. Dropping a default that has been bound to a column

The following example unbinds the default associated with the EmergencyContactPhone column of the Contact table and then drops the default named phonedflt.

USE AdventureWorks2022;  
GO  
   BEGIN   
      EXEC sp_unbindefault 'Person.Contact.Phone'  
      DROP DEFAULT phonedflt  
   END;  
GO  

See Also

CREATE DEFAULT (Transact-SQL)
sp_helptext (Transact-SQL)
sp_help (Transact-SQL)
sp_unbindefault (Transact-SQL)