2012/8/13 Flavio Henrique Araque Gurgel <[email protected]>

> Em 10-08-2012 17:20, Marcos Aurelio Nobre escreveu:
> > Boa tarde pessoal.
>
> Sou só eu ou mais pessoas estão recebendo mensagens com data do dia 10
> da lista só hoje?
>
>
Não, eu também recebi com dia 10.


> > Eu estou precisando consultar nas sys_tables quais são as Sequences e
> > respectivas Tabelas a que estão associadas,
> > "dentro" de determinado schema.
> >
> > Alguém saberia me dizer como que eu Quero o banco para me prover esta
> > consulta/listagem ?
>
> Acho que isso não é possível.
>
> As sequências *não* são associadas a tabelas.
>
> O que se faz é utilizá-las como valor padrão para determinada coluna, ou
> utilizar gatilhos e outras funções para obter o valor da sequência.
> Note que uma sequência pode ser inclusive utilizada por mais de uma tabela.
>
> A associação sequência <-> tabela é mera formalidade para a utilização
> de valores seriais em determinadas colunas.
>
>
Na verdade, existe sim uma certa dependência, mas não é tão restrita.

Veja em [1], na criação (ou alteração) de uma sequence você pode definir um
campo de uma tabela para ser o "dono" dessa sequence. Bastando definir
OWNDED BY tabela.coluna.

Isso não deixa de ser uma "mera formalidade", como você disse, mas garante
que ao excluir a coluna, a sequence será excluída também.

Marcos, para recuperar as sequences, é simples, basta consultar a tabela
pg_class filtrando por relkind = 'S' (OBS: S maiúsculo). Agora, pegar
a dependência (que citei acima), eu não sei, mas tem armazenado em algum
lugar, vou ver se acho aqui, talvez seja na pg_depends.

[1] http://www.postgresql.org/docs/9.1/static/sql-createsequence.html

--
Matheus de Oliveira
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a