Mensaje    Asunto: Error al borrar una tabla en Firebird Responder citando

Estoy usando esto para borrar una tabla de una base de datos Firebird:
Código:
Query->Close();
Query->SQL->Text = "SELECT COUNT(*) Tabla FROM RDB$RELATIONS WHERE RDB$RELATION_NAME = 'AUXILIAR_FEDERICO'";
Query->Open();
if (Query->FieldByName("Tabla")->AsInteger != 0)
{
     if (!tAfiliados->InTransaction)
          tAfiliados->StartTransaction();

     Query->Close();
     Query->SQL->Text = "DROP TABLE AUXILIAR_FEDERICO";
     try
     {
          Query->ExecSQL();
          tAfiliados->Commit();
     }
     catch(...)
     {
          tAfiliados->Rollback();
          return false;
     }
}
return true;

A veces, no siempre, me aparece este mensaje de error:

La tabla está cerrada y los querys que puede usarla también. Además la tabla es ÚNICA para cada usuario de la aplicación y sólo la usa él. ¿Cómo puedo forzar el borrado de la tabla?
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)