Re: [firebase-br] Chave + expressão

Antonio Carlos a.lima.silva em terra.com.br
Ter Jun 21 12:11:21 -03 2005


Bem Integridade Referencial resolve isso no banco. Ou seja o que é PK em uma 
tabela se torna FK de outra e assim garante-se que se houver dados gravados 
em uma tabela em que a PK esteja presente, nao consegue-se exlui-la.
Outra solucao que comecei adotar foi antes de excluir verificar por store 
procedure se aquela informacao esta presente em tabelas chaves do sistema, 
havendo nao permite a exclusao.

Espero poder ter ajudado

Antonio Carlos
----- Original Message ----- 
From: "Gustavo André Tenan" <gustavo em tecbyte.com.br>
To: "ListaFirebase" <lista em firebase.com.br>
Sent: Tuesday, June 21, 2005 10:38 AM
Subject: [firebase-br] Chave + expressão


Olá pessoal,

preciso de uma idéia de vocês para solucionar um probleminha,

é o seguinte, nos meus cadastros(tabelas) tenho um campo
chamado apagado char(1) S ou N, esse campo indica se o registro
está visível ou não para os usuários do sistema.
O problema é que se alguém apaga o registro e depois tenta
cadastrar outro, e repete algum numero que é chave no sistema...
da problema de integridade e eu tenho q entrar no bd e apagar
fisicamente ou alterar o campo para não dar mais conflito.

um exemplo.  cadastro de conveniados tenho o ID q é gerado automático.
mas tenho um campo q é o código do conv na empresa,
esse campo faz parte de uma chave..  empres + cod,
então se um é apagado e o operador tenta por outro no lugar..
com o mesmo codigo.. pronto.. já tenho problema na chave...

como acho q no firebird não há possibilidade de criar chaves do tipo
empres + cod where apagado = "N" ou algo similar..

e com verificação pro triggers ficou lento... sendo q tenho cadastros
muito grandes..

gostaria de sugestões de vocês..

desde já agradeço e abraços

Gustavo André Tenan
______________________________________________
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







Mais detalhes sobre a lista de discussão lista