[firebase-br] Desativar Foreign Key de todo o Banco

Exclaim Tecnologia exclaimtecnologia em yahoo.com.br
Ter Jun 7 08:20:22 -03 2005


Não deu certo Amigo, não aparece nada, cara esse negócio é complicado!
rsrsr!!

Valew!!


----- Original Message -----
From: "Joelson - Souzamark" <joelsonss em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, June 06, 2005 10:03 PM
Subject: Re: [firebase-br] Desativar Foreign Key de todo o Banco


A quem interessar possa:

Foreign Key sempre me deu uma dor de cabeça danada na hora q o usuário
ia excluir um registro q tinha um relacionamento, dava aquele erro :-( então
teria uma saída usando o try except no delphi  mas eu pensava em uma maneira
um pouco mais elegante de sair dessa situação e um belo dia resolvi dar uma
olhada nas tabelas de sistema e cheguei nesse código, inclusive mudei ele hj
depois
do post do Eduardo Jed trocando o IN pelo EXISTS... thanxs ;-)...
este select verifica se a tabela a ser excluída tem algum dependente...
então eu acho
q com alguma adaptação vai dar pra fazer o q o companheiro precisa....

SELECT A.RDB$RELATION_NAME, B.RDB$FIELD_NAME FROM
RDB$INDICES A INNER JOIN RDB$INDEX_SEGMENTS B ON (A.RDB$INDEX_NAME =
B.RDB$INDEX_NAME) WHERE EXISTS (SELECT 1 FROM RDB$RELATION_CONSTRAINTS
WHERE (RDB$CONSTRAINT_TYPE = 'PRIMARY KEY') AND (RDB$RELATION_NAME =
'CLIENTES') AND (RDB$CONSTRAINT_NAME = A.RDB$FOREIGN_KEY))

sem mais
Joelson


----- Original Message -----
From: "Exclaim Tecnologia" <exclaimtecnologia em yahoo.com.br>
To: "Lista Firebase" <lista em firebase.com.br>
Sent: Monday, June 06, 2005 7:08 PM
Subject: [firebase-br] Desativar Foreign Key de todo o Banco


> Estou desenvolvento um aplicativo de copia de bancos, porem como a grande
> maioria dos bancos possui foreign keys só é possível copiar a tabela pai
> antes da filha e nunca o inverso devido a integridade relacional. Ja
> tentei
> de varias formas, ja postei aqui a ideia de gerar a ordem das tabelas, mas
> nao consegui solução, vejo que uma solução seria desativar  as foreign
> keys
> de todas as tabelas e depois reativa-los, alguem sabe como eu poderia
> fazer
> isso??
>
> Obrigado!!
>
>
>
>
>
>
> ____________________________________________________
> Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
> http://mail.yahoo.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
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> --
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.323 / Virus Database: 267.6.4 - Release Date: 06/06/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
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



	
	
		
____________________________________________________
Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis! http://mail.yahoo.com.br





Mais detalhes sobre a lista de discussão lista