Sim, pode não ser a ordem de criação. Mas o OID é sempre crescente, não?
At.te, Alisson Viegas Acsiv Sistemas -----Mensagem original----- De: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Osvaldo Kussama Enviada em: terça-feira, 26 de janeiro de 2010 17:54 Para: Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] RES: RES: Ordem de criação das tabelas 2010/1/26 Alisson Viegas <li...@acsiv.com.br>: > Hum... > > Legal. Valeu pela dica e pelo SQL. > > Vou usar da sua forma. > > > > At.te, > Alisson Viegas > Acsiv Sistemas > > > > De: pgbr-geral-boun...@listas.postgresql.org.br > [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fabrízio de > Royes Mello > Enviada em: terça-feira, 26 de janeiro de 2010 17:07 > Para: Comunidade PostgreSQL Brasileira > Assunto: Re: [pgbr-geral] RES: Ordem de criação das tabelas > > > > > > 2010/1/26 Alisson Viegas <li...@acsiv.com.br> > > <corte> > > select pg_tables.schemaname,pg_class.relname from pg_class > > inner join pg_tables on pg_tables.tablename = pg_class.relname > > where pg_class.relkind = 'r' and pg_class.relname !~ '_' > > order by pg_class.oid; > > > > Caro Alisson, > > Dessa forma o seu SQL não irá retornar tabelas que contenham o caracter "_" > no nome... > > Outro ponto é que se vc for utilizar o catálogo diretamente, sem fazer uso > do information_schema pois este não tem o oid para vc ordenar, então é mais > adequado vc fazer a junção da *pg_catalog.pg_class* com > *pg_catalog.pg_namespace* e não com a *pg_catalog.pg_tables* que é uma visão > que já faz essa junção, então dessa forma o seu SQL está *redundante*. > > O SQL que enviei no e-mail anterior previne essa *redundância* e faz a > junção adequada no catálogo, assim como a visão *pg_catalog.pg_tables* e a > *information_schema.tables*. > Atente para o fato que a ordenação pelo oid nem sempre garantirá que esta ordem será a mesma que a ordem de criação das tabelas. Vide: http://www.postgresql.org/docs/current/interactive/ddl-system-columns.html "OIDs are 32-bit quantities and are assigned from a single cluster-wide counter. In a large or long-lived database, it is possible for the counter to wrap around." Osvaldo _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral