[firebase-br] Comportamento estranho no Foreing Key

Saulo Lima saulo.analista em gmail.com
Qui Abr 8 15:18:04 -03 2010


Olá pessoal,
     Imaginem uma tabela com codigo (chave primária), descricao chamada T1,
e uma outra tabela com codigo (chave primária) e codigoT1 (código da tabela
T1), chamada de T2, essa tabela foi criado um foreing key com a tabela T1
através do campo codigoT1.
     Então inseri um registro na tabela T1 com os seguintes dados: 1,
"produto" e commit. Depois apliquei um update no campo descricao alterando
para "prod" e deixei a transação aberta não inporta o que o update fez, o
que interessa aqui é que eu efetuei um update na tabela sem fecha a
transação.
     Depois fui na tabela T2 e inseri um registro com os seguinte dados: 1,
1 e tentei dar um commit. Resultado, Deadlock in no wait transactio
violation foreing key xxxx on table T2.
     Por que isso, fiquei muito chateado com este fato por que que com
outros bancos isso não acontece, como eu resolvo isso?

     Agradeço desde já pela atenção prestada.

Saulo



Mais detalhes sobre a lista de discussão lista