bulldog 0 Denunciar post Postado Agosto 28, 2012 Olá companheiros profissionais, Tenho duas tabelas cliente e pedido, hoje alterei na tabela cliente as praças de alguns clientes e quero atualizar a tabela pedido de acordo com a tabela cliente, exemplo: pcpedc = tabela de pedido pcclient = tabela de cliente update pcpedc set pcpedc.codpraca = (select (pcclient.codpraca) from pcclient where pcpedc.codcli=pcclient.codcli) Mas infelizmente retorna uma erro: ORA-01407: cannot update ("MEDALHA"."PCPEDC"."CODPRACA") to NULL..., este erro me diz que estou tentando inserir um valor null no campo pcpedc.codpraca, mas fazendo um select na tabela de cliente e pedido nao vejo ou nao consigo encontrar este campo null. Onde esta o erro? O que será o problema? Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 28, 2012 Esta query retorna nulo em alguma condição select (pcclient.codpraca) from pcclient where pcpedc.codcli=pcclient.codcli A solução depende se pcpedc.codpraca pode ser nulo ou não. Talvez a tabela pcclient tenha de ser corrigida antes. Uma solução seria : update pcpedc set pcpedc.codpraca = (select (pcclient.codpraca) from pcclient where pcpedc.codcli=pcclient.codcli and pcclient.codpraca is not null) mas vai resolver a query, não sei se resolve o problema. Compartilhar este post Link para o post Compartilhar em outros sites