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.