SQL Server: How can I check to see if a field has a “NULL” or “NOT NULL” constraint in place?

半腔热情 提交于 2019-12-05 18:13:29

You can look at INFORMATION_SCHEMA.COLUMNS:

if (select IS_NULLABLE from INFORMATION_SCHEMA.COLUMNS 
    where TABLE_NAME='my_table' and COLUMN_NAME='end_date') = 'NO' 
begin
    ALTER TABLE my_table ALTER COLUMN end_date DATETIME NULL
end

If you're on SQL Server 2005+, this returns "NO" if there is a NOT NULL constraint:

SELECT IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'tblName'
AND COLUMN_NAME = 'colName'
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!