Hola Ele, no mencionas qué manejador de base de datos estás utilizando y en para este caso las consultas son completamente dependiendo del manejador, Te comento que tienes que hacer uso de los Metadatos de la BD.
Cada manejador poseé algunas vistas sobre los objetos que contiene así por ejemplo en ORACLE existe una vista que se llama ALL_TABLES que contiene información de todas las tablas de la base de datos o una vista que se denomina ALL_TAB_COLUMNS, la cual contiene información de todos los campos de estas tablas.
De tal manera, para obtener lo que necesitas puedes hacer esto:
SELECT column_name
FROM ALL_TAB_COLUMNS A
WHERE A.OWNER = 'Propietario' AND
A.TABLE_NAME = 'TuTabla'
Order by A.table_name,A.column_name
Para SQL Server la sintaxis es algo parecido, utilizando las vistas SYS.ALL_OBJECTS y SYS.ALL_COLUMNS Y SYS.SCHEMAS
select a.name from
sys.all_columns a
inner join sys.all_objects b on b.object_id = a.object_id
inner join sys.schemas c on c.schema_id = b.schema_id
where c.name = 'Esquema'
and b.name = 'TuTabla'
Para otros manejadores de base de datos es cuestión de que busques las vistas correspondientes.
Saludos
Leo.