IBUpdateSQL com Joins

Firebird

10/03/2003

Estou usando um componente IBQUERY fazendo um SELECT em duas tabelas:
SELECT * FROM CLIENTES, DEPARTAMENTOS
WHERE CLIENTES.COD = DEPARTAMENTOS.COD

Conectei um IBUpdateSQL a esse componente para poder atualizar o RESULT SET.
Somente as informações de CLIENTES serão alteradas, por isso eu configuro o IBUPDATESQL para alterar somente as informações da CLIENTES.
Porém percebi que, ao alterar uma informação em CLIENTES, o sistema parece afetar DEPARTAMENTOS, pois os campos de DEPARTAMENTOS ficamo ´NULOS´. Se eu tentar fazer uma nova alteração em um outro campo qualquer de CLIENTES, recebo um erro
informando que ´Um campo de DEPARTAMENTOS precisa ter um valor´.

Eu sei que para fazer alterações em DUAS TABELAS eu preciso usar DOIS componentes UPDATESQL, um para cada tabela. Porém não é esse o caso. Apesar de pesquisar em duas tabelas, eu estou alterando somente os dados de UMA delas.

Porque o Delphi tenta alterar (ou inserir) um valor em DEPARTAMENTOS
se eu não faço qualquer referência a ele no componente IBUPDATESQL?

Se alguém souber, sou todo ouvidos, ou melhor, olhos.


Descolado


Anonymous

Anonymous

Curtidas 0
POSTAR