IBUpdateSQL com Joins
10/03/2003
0
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
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
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)