Boa tarde pessoal do grupo. Em minha aplicação, quando faço o cadastramento
de um equipamento (tabela equipamentos), preciso que nesse momento seja
aberta simultaneamente uma ordem de serviço para instalação (tabela OS) e
um try-out de verificação (tabela tryout), ate ai fácil. O problema é que a
tabela OS tem um campo chamado equipamento que é FK da tabela EQUIPAMENTOS
e na aplicação eu faço a inclusão do equipamento, não comito, pego o numero
do equipamento que acabei de incluir e tento colocar no campo equipamento
da tabela OS, mas na hora de gravar gera um erro de chave estrangeira.
Acredito que isso esteja acontecendo porque o registro inserido na tabela
equipamento não esta comitado. A pergunta é a seguinte: Realmente eu
preciso comitar o registro na primeira tabela pra só depois incluir um
registro na segunda?
Se esse comportamento for normal alguem tem alguma sugestão de como eu
controlo de transação nesse caso, já que se algum dos registros gerar erro
eu quero que não grave nada no banco.

Obrigado pela atenção.


Emerson Sanches
Analista de Sistemas

Responder a