我想检查该列是否已具有默认约束,或者不仅具有表名和列名数据。有了该记录数,我们可以创建约束。
我们是否有任何其他属性来检查数据集中该列是否存在约束?
我想检查该列是否已具有默认约束,或者不仅具有表名和列名数据。有了该记录数,我们可以创建约束。
我们是否有任何其他属性来检查数据集中该列是否存在约束?
查询
select COLUMN_DEFAULT
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = @tableName
and COLUMN_NAME = @columnName
将返回为列指定的默认值(null
如果未定义默认值)
更新:
以下查询还将检索约束的名称:
select
dc.name,
dc.definition
from sys.default_constraints dc
join sys.objects o
on o.object_id = dc.parent_object_id
join sys.columns c
on o.object_id = c.object_id
and c.column_id = dc.parent_column_id
where o.name = @tableName
and c.name = @columnName
如果没有返回行,则没有在列上定义默认约束。