'How to check if a column has not null constraint?

I am using SQL Server 2008 R2.

I have a table in which I have a column that have a not null constraint.

Now, what if I want to check if column has not null constraint defined or not for specific column?

Is there any query to find out it?

Thanks in advance..



Solution 1:[1]

Something like

SELECT o.name AS tab, c.name AS col, c.is_nullable 
FROM sys.objects o
INNER JOIN sys.columns c ON c.object_id = o.object_id
WHERE o.name like '%yourtable%' and type = 'U'

See sys.columns and sys.objects

Solution 2:[2]

There's some catalog views you can use:

// information about check constraints
select * from sys.check_constraints 

// information about specific columns
select name, is_nullable from sys.columns

// information about tables
select * from sys.tables

The sys.columns is_nullablefield holds information about nullability.

Solution 3:[3]

there is a table sys.all_columns and a column in this table called is_nullable

http://technet.microsoft.com/en-us/library/ms177522(v=sql.105).aspx

select s.name, c.name, c.is_nullable from sys.tables s, sys.all_columns c
where s.object_id = c.object_id
and s.type = 'U' -- USER_TABLE
and  c.is_nullable = 1

Solution 4:[4]

It is a simple command that will list - Field, Type, Null, Key, Default

SHOW FIELDS FROM Your_Table_Name;

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ocaso Protal
Solution 2 jpw
Solution 3
Solution 4 user3157008