From here:
http://haacked.com/archive/2006/07/05/bulletproofsqlchangescriptsusinginformation_schemaviews.aspx
Name |
Returns |
CHECK_CONSTRAINTS |
Check Constraints |
COLUMN_DOMAIN_USAGE |
Every column that has a user-defined data type. |
COLUMN_PRIVILEGES |
Every column with a privilege granted to or by the current user in the current database. |
COLUMNS |
Lists every column in the system |
CONSTRAINT_COLUMN_USAGE |
Every column that has a constraint defined on it. |
CONSTRAINT_TABLE_USAGE |
Every table that has a constraint defined on it. |
DOMAIN_CONSTRAINTS |
Every user-defined data type with a rule bound to it. |
DOMAINS |
Every user-defined data type. |
KEY_COLUMN_USAGE |
Every column that is constrained as a key |
PARAMETERS |
Every parameter for every user-defined function or stored procedure in the datbase. For functions this returns one row with return value information. |
REFERENTIAL_CONSTRAINTS |
Every foreign constraint in the system. |
ROUTINE_COLUMNS |
Every column returned by table-valued functions. |
ROUTINES |
Every stored procedure and function in the database. |
SCHEMATA |
Every database in the system. |
TABLE_CONSTRAINTS |
Every table constraint. |
TABLE_PRIVILEGES |
Every table privilege granted to or by the current user. |
TABLES |
Every table in the system. |
VIEW_COLUMN_USAGE |
Every column used in a view definition. |
VIEW_TABLE_USAGE |
Every table used in a view definition. |
VIEWS |
Every View |
When selecting rows from these views, the table must be prefixed with information_schema as in SELECT * FROM information_schema.tables.