[firebase-br] Erro de FK
tulio roversi
tulioroversi em yahoo.com.br
Qua Nov 23 10:44:52 -03 2005
Se eu der um update na janela do SQL da certo, mas no grid de dados da pau.
Cristiano Rebonatto <crebonatto em upf.br> escreveu: Vc está executando o UPDADE no ibextpert na janela do SQL ou vc está na
parte de manutenção nos dados da tabela !!!!?????
tulio roversi escreveu:
>Cristiano,
>
> O erro q acontece e referente a opcao 2: naum consigo setar NULL para o campo CDTIPOCARTAO na tabela CLIENTE. Ele naum eh PK nem NOT NULL. Estou fazendo o teste na propria tabela pelo IBExpert portanto naum eh minha aplicacao. Q pode ser?
> Erro: violation of Foreign Key constraint...
> vlw.
>
>Cristiano Rebonatto escreveu: Vou me meter nessa !
>
>Não sei se entendi direito, mas vou tentar contribuir com 2 sugestões.
>
>1) Não sei se é bem isso :
>Pelo que entendi vc quer mesmo que quando exista um relacionamento(uma
>FK entre a tabela cliente e tipocartao) e este seja excluído na tabela
>pai (tipocartao) a coluna CDTIPOCARTAO na tabela cliente seja atualizada
>com o valor NULL ?
>Bem se for isso vc pode tentar criar a FK com a opcao ON DELETE SET NULL.
>
>alter table cliente add constraint FK_CODTIPOCARTAO foreign
>key(cdtipocartao) references TIPOCARTAO(cdtipocartao) on delete set null
>
>
>2) Vc consegue tranquilamente setar NULL para o campo codtipocartao na
>tabela cliente A NÃO SER QUE VOCÊ o tenha definido com NOT NULL ou então
>se ele fizer parte da sua PK da sua tabela cliente.Que pela jeito não é
>o seu caso
> O NULL não é valor então a FK não é validada nessa situação. Agora se
>você colocar uma valor nela, ele obrigatoriamente vai ter que existir na
>tabela pai.
>
>Que erro você está recebendo que não está conseguindo executar essa ação ?
>
>
>
>
>
>
>
>tulio roversi escreveu:
>
>
>
>>ola RedDevil e os demais,
>>
>> pode deixar q naum faço mais essas perguntas indiscretas. Quanto ao erro vou explicar melhor pois o mesmo nao acontece no Oracle.
>> Exemplo:
>>
>> tabela: CLIENTE TIPOCARTAO
>> PK CDCLIENTE PK CDTIPOCARTAO
>> NMCLIENTE NMTIPOCARTAO
>> FK CDTIPOCARTAO NULL
>>
>> Se uma vez eu cadastro um cliente e informo um tipo de cartao para ele, naum posso mais apagar seu tipo de cartao (no registro da tabela cliente)? Tah claro?
>>
>> []´s, Tulio.
>>
>>RedDevil escreveu: ola Tulio,
>>
>>
>>Post By tulio roversi:
>>
>>
>>
>>
>>> bom dia pessoal,
>>> alguem sabe seh eh possivel fazer com q o firebird ignore o erro de FK qndo apago o conteudo de um campo q eh do tipo null referente a FK em um registro de uma tabela? Deu pra entender?
>>> vlw.
>>> Tulio.
>>>
>>>
>>>
>>>
>>esta ja eh a segunda vez que voce posta essa mesma pergunta...
>>
>>eu acho que ninguem respondeu ainda devido ao que voce escreveu: "deu
>>para entender?"...
>>
>>ninguem quer admitir que entendeu...
>>;o)
>>
>>eu tambem nao entendi (ou entendi sem dar...;o), mas ate onde eu sei (o
>>que nao eh muita coisa...;o), nao existe uma maneira de fazer isso sem
>>excluir a FK...
>>
>>
>>[]s
>>força sempre!!!
>>ate +++
>>
>>
>>
>>
>>
>
>
>
--
+-----------------------------------------------------------+
Cristiano Rebonatto
Setor de Análise e Desenvolvimento
Divisão de Tecnologia da Informação
Universidade de Passo Fundo
Passo Fundo - RS
+-----------------------------------------------------------+
______________________________________________
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! Acesso Grátis: Internet rápida e grátis.
Instale o discador agora!
Mais detalhes sobre a lista de discussão lista