sys.default_constraints (Transact-SQL)

Contains a row for each object that is a default definition (created as part of a CREATE TABLE or ALTER TABLE statement instead of a CREATE DEFAULT statement), with sys.objects.type = D.

Column name

Data type

Description

<Columns inherited from sys.objects>

 

For a list of columns that this view inherits, see sys.objects (Transact-SQL).

parent_column_id

int

ID of the column in parent_object_id to which this default belongs.

Definition

nvarchar(max)

SQL expression that defines this default.

SQL Server 2008 and SQL Server 2005 differ from SQL Server 2000 in the way they decode and store SQL expressions in the catalog metadata. The semantics of the decoded expression are equivalent to the original text; however, there are no syntactic guarantees. For example, white spaces are removed from the decoded expression.

is_system_named

bit

1 = Name was generated by system.

0 = Name was supplied by the user.

Permissions

In SQL Server 2005 and later versions, the visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. For more information, see Metadata Visibility Configuration.

Examples

The following example returns the definition of the DEFAULT constraint that is applied to the VacationHours column of the HumanResources.Employee table.

SELECT d.definition FROM sys.default_constraints d
INNER JOIN sys.columns c
ON d.parent_column_id = c.column_id
WHERE d.parent_object_id = OBJECT_ID(N'HumanResources.Employee', N'U')
AND c.name = 'VacationHours';