Obtener información de una base de datos de SQL Server 2005 por medio de la vista "Information Schema"
En algunas circunstancias nos puede ser util obtener información acerca de la estructura de una base de datos, ya sea para crear un reporte o para la metaprogramación.
Este query que les dejo, obtiene de una forma sencilla, la información de cada de uno de los campos pertenecientes a ccada una de las tablas de una base de datos
SELECT INFORMATION_SCHEMA.COLUMNS.TABLE_NAME,
INFORMATION_SCHEMA.COLUMNS.COLUMN_NAME,
INFORMATION_SCHEMA.COLUMNS.IS_NULLABLE,
INFORMATION_SCHEMA.COLUMNS.CHARACTER_MAXIMUM_LENGTH,
INFORMATION_SCHEMA.COLUMNS.NUMERIC_PRECISION,
INFORMATION_SCHEMA.COLUMNS.NUMERIC_SCALE,
INFORMATION_SCHEMA.COLUMNS.DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE (NOT (INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA = 'db_owner')) AND
(NOT (INFORMATION_SCHEMA.COLUMNS.TABLE_NAME = N'sysdiagrams')) AND
(NOT (INFORMATION_SCHEMA.COLUMNS.TABLE_NAME = N'dtproperties'))
ORDER BY INFORMATION_SCHEMA.COLUMNS.TABLE_NAME
