Dickson,

> Em 4 de março de 2010 20:13, Mozart Hasse <mozart.ha...@usa.net> escreveu:
> > Ah, questão de prática.
-...
> > cuidar dos malditos 40% sem PK artificial em bases muito menores.
... 
> Mozart, apenas por curiosidade, essas chaves artificiais são
> sequences? 

Não, normalmente são apenas registros numerados pela aplicação via código
ou triggers.

> Se sim, já aconteceu de você precisar copiar dados de
> outras bases para esta por exemplo? Se sim, pode nos expor como você o
> fez?

Replicação. No caso de inserções em servidores distintos minha aplicação
tem 
um esquema de alocação e distribuição automática de faixas de códigos
entre eles,
de forma que dois servidores nunca usam o mesmo código ao inserir dados em
bases 
diferentes na mesma tabela.

Quando a replicação não resolve, eu renumero os registros de uma das bases
sem dó,
incluindo todas as FKs dependentes da tabela principal. Não dá tanto
trabalho assim,
basta uns INSERT INTO SELECT bem escolhidos, como eu disse é questão de
prática. 
Normalmente só precisamos renumerar alguma coisa na hora de exportar ou
importar 
dados de sistemas externos. Não consigo lembrar de uma PK mal escolhida que
nos tenha
obrigado a renumerar alguma coisa por conta de migração ou conversão de
dados.
Já o abismo entre a "perfeição" conceitual de uma chave natural e o uso
dela 
pela #(-)&*%$#*&*$ do otimizador SQL não tem solução nem gambiarra que
melhore.

Atenciosamente

Mozart Hasse


_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a