Ola Ricardo,
Ricardo Cardim wrote:
> desculpa, reformulando...Quero o tamanho EM BYTES de uma tabela...se
> tiver como...
Tem sim. Caso a sua versao seja 8.1.x voce pode fazer o seguinte:
foo=> SELECT pg_relation_size('produto_nota_fiscal');
pg_relation_size
------------------
1266098176
(1 registro)
A consulta acima retorna o tamanho em bytes.
foo=> SELECT oid, relname FROM pg_class WHERE relname =
'produto_nota_fiscal';
oid | relname
-------+---------------------
17847 | produto_nota_fiscal
(1 registro)
Busquei o OID para descobrir o tamanho formatado.
foo=> SELECT pg_size_pretty(17847);
pg_size_pretty
----------------
17 kB
(1 registro)
E nao retornou o que eu esperava. Vou conferir se isto nao eh um bug.
Caso a versao esteja entre a 7.3 e a 8.1, voce encontra o modulo dbsize
no contrib que tinha estas funcoes e foi incorporado ao backend na 8.1.
E se voce quiser dah pra procurar no braco, buscando o oid do banco (da
tabela jah temos):
foo=> SELECT oid, datname FROM pg_database WHERE datname = 'foo';
oid | datname
-------+---------
16408 | foo
(1 registro)
E usando no shell (ou no Windows Explorer, se for o caso):
#ls -lh /var/lib/pgsql8/base/16408/17847*
-rw------- 1 postgres postgres 1,0G 2006-05-03 00:08
/var/lib/pgsql8/base/16408/17847
-rw------- 1 postgres postgres 184M 2006-10-16 20:48
/var/lib/pgsql8/base/16408/17847.1
Com calma depois vou conferir se nao tem um furinho na pg_size_pretty,
jah que o tamanho dessa tabela eh de 1.2 GB.
Alvaro
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/
Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios