Du bör använda den nuvarande sys
katalogvyer (om du använder SQL Server 2005 eller nyare - sysobjects
vyer är fasade ut och bör undvikas) - kolla in den omfattande MSDN SQL Server Books Online-dokumentationen om katalogvyer här.
Det finns en hel del vyer du kan vara intresserad av:
sys.default_constraints
för standardbegränsningar för kolumnersys.check_constraints
för kontrollbegränsningar på kolumnersys.key_constraints
för nyckelbegränsningar (t.ex. primärnycklar)sys.foreign_keys
för utländska nyckelrelationer
och mycket mer - kolla in det!
Du kan fråga och gå med i dessa vyer för att få den information som behövs - t.ex. detta kommer att lista tabellerna, kolumnerna och alla standardbegränsningar som definierats för dem:
SELECT
TableName = t.Name,
ColumnName = c.Name,
dc.Name,
dc.definition
FROM sys.tables t
INNER JOIN sys.default_constraints dc ON t.object_id = dc.parent_object_id
INNER JOIN sys.columns c ON dc.parent_object_id = c.object_id AND c.column_id = dc.parent_column_id
ORDER BY t.Name