[firebase-br] ac/Cantu integridade refencial declarativaxtriggers?

Renato Bermudo renato em eturbo.com.br
Qua Jan 5 18:02:21 -03 2005


Caro Josauro, vc diz na sua opinião que não se deve usar FK apenas como 
integridade referencial? Por que não?
No meu entender, uma das garantias de manter a integridade dos dados é via 
FK e não correr riscos de escrever uma trigger errada e acabar fazendo uma 
besteira no banco.
Não leve isso como uma crítica, eu faço da forma que citei e gostaria de 
saber o motivo que se leva em criar uma trigger que vai fazer o mesmo 
trabalho de um FK.


----- Original Message ----- 
From: "Josauro S.J." <josauro em casasoft.inf.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, January 05, 2005 9:37 AM
Subject: Re: [firebase-br] ac/Cantu integridade refencial 
declarativaxtriggers?


Não sou o Cantu mas tambem tenho como base ler os artigos do mesmo, e com 
base em outras publicações, fiz minha opinião.

FK - Apenas como integridade referencial não usar, fazer uso de Trigger para 
essa finalidade.
FK - Para acesso a dados entre tabelas, fazer testes para verificar se 
existe ganho de performanse, provavelmente nos casos de dados muito 
repetidos não adiantará muito, normalmente uso quando tenho varias tabelas 
que compoem um registro so, ou que seja bastante usado em JOINS com teste de 
performan-se.

Josauro S.J.
Diretor
josauro em casasoft.inf.br
----- Original Message ----- 
From: Fausto
To: lista em firebase.com.br
Sent: Tuesday, January 04, 2005 10:58 PM
Subject: [firebase-br] ac/Cantu integridade refencial declarativaxtriggers?


Salve Cantú, antes de tudo, feliz ano novo te desejo paz, sucesso e tempo, 
rs, para que venha o livro...rs

Estou modelando um sistema onde o uso das FK, estão me deixando em dúvida, 
principalmente depois que li seu artigo sobre Constraints na Clube delphi 
56.
Vou citar 3 exemplos:
Tabela de Produtos (Procod) PK
Tabela de Pedidos  (NrPedido) PK
Tabela de Itens(NrPedido+NrItem)PK, (Procod)FK???

Há necessidade da tabela de itens ter uma FK  relacionando com a tabela de 
produtos?
Estou fazendo esta pergunta porque no artigo em questão vc citou:
 "A criação de chaves estrangeiras onde os valores se repetem constantemente 
é desaconselhada, pois pode causar queda de desempenho."
Eu li, e entendi o que vc quiz dizer com baixa granularidade, devido aos 
indices com valores altamente repetitivos, então baseado nisto poderiamos 
dizer que também é inviável termos uma FK entre uma tabela de clientes e 
cidades, ou o próprio exemplo acima?

Se optassemos por ter a FK em ambos os casos, digamos que em uma pequisa de 
produtos mais vendidos não seria interessante termos este indice ativo na 
tabela de ItensxProdutos, no caso uma FK?

Ou ainda uma consulta de clientes de uma determinada cidade o caso da FK 
entre clientesxcidades não tornaria a pesquisa mais rápida?

Sei que estas perguntas podem ser básicas, mas entenda, eu venho do 
Clipper/DBF e do Paradox  ;)
[]´s

Fausto


--------------------------------------------------------------------------------


No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.6.8 - Release Date: 3/1/2005



--------------------------------------------------------------------------------


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br 





Mais detalhes sobre a lista de discussão lista