assuming your statistics are uptodate:
select rtrim(tabschema) ||'.'||rtrim(tabname) as table, card as cardinality
from syscat.tables
will return you tablenames and number of rows.
actual physical tablesize can be calculated additionally:
select rtrim(a.tabschema) ||'.'||rtrim(a.tabname) as table, a.card as cardinality, a.npages * b.pagesize
from syscat.tables a, syscat.tablespaces b
where a.tbspaceid = b.tbspaceid
this result is perfect, if you have one table per tablespace or your data is really good organized.
npages is the number of physical pages where data from a table exist, but on one page can be data from all tables in one tablespace. So a few might be counted double.
you can also calculate the theoretical used space by using something like the total number of rows/ number of rows per page * pagesize.
Usually databases and tablespaces ar backuped, not tables.