Yo lo hago como Cloayza, pero con una pequeña variación para no tener que crear un procedimiento almacenado y poderlo lanzar como una simple consulta sql:
Código SQL
[-]
execute block
RETURNS (
TABLA VARCHAR(31),
CANTIDAD INTEGER)
AS
Begin
For Select RDB$Relation_Name From RDB$Relations
Where (RDB$System_Flag = 0) And (RDB$View_BLR Is Null)
Order By RDB$Relation_Name Into :Tabla Do
Begin
Execute Statement 'Select Count (*) From ' || :Tabla Into :Cantidad;
Suspend;
End
End
Saludos a todos