Si es una consulta, pero como ves no se ha abierto, no pide registros al servidor, solo crea los campos persistentes (que por supuesto tendrá que acceder al servidor para saber qué campos hay en dicha tabla).
En el caso de MDOLIB (e intuyo que IBX), también se puede obtener desde el database asociado, que dispone de estos 2 métodos públicos:
Código Delphi
[-]
procedure GetFieldNames(const TableName: string; List: TStrings);
procedure GetTableNames(List: TStrings; SystemTables: Boolean = False);
Saludos