[firebase-br] RES: RES: Merge com condição na tabela Fonte

UPSAI | Informatica informatica em upsai.com.br
Sex Fev 24 08:35:23 -03 2017


Sofia

Tenho interesse em conhecer a sua solução, você poderia postar?

Outro interesse, esta tabela que você está usando para entrada de dados é um
arquivo TXT ou uma tabela do banco?

Obrigado

Wagner Aranha


-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Sofia Bonato de
Moraes - EES
Enviada em: quinta-feira, 23 de fevereiro de 2017 16:05
Para: 'FireBase'
Assunto: [firebase-br] RES: Merge com condição na tabela Fonte

Já encontrei a solução, fazendo o filtro em um subselect usado como tabela
Fonte.

Obrigada.


-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Sofia Bonato de
Moraes - EES Enviada em: quinta-feira, 23 de fevereiro de 2017 15:47
Para: 'FireBase' <lista em firebase.com.br>
Assunto: [firebase-br] Merge com condição na tabela Fonte

Pessoal, tenho a seguinte tabela:

Tmpp_lote

Cod transmissão                   cod_cli   lote    desc

'1                             ', '000001', '001', '001'

'1                             ', '000001', '001', '001'

'000000000000000000000000000017', '000004', '001', '001' 

'000000000000000000000000000019', '000004', '001', '001'

'000000000000000000000000000020', '000004', '001', '001'

 

A qual quero usar como fonte para preencher a tabela tdp_lote.

Estou usando o merge:

 

merge into tdp_lote t1 using tmpp_lote t2 on 

t2.cod_cliente = t1.cod_cliente and 

t2.cod_lote = t1.cod_lote AND

t2.cod_transmissao='1'

when matched then update set 

t1.descricao = t2.descricao

when not matched then 

insert (t1.cod_cliente, t1.cod_lote, t1.descricao)

values( t2.cod_cliente, t2.cod_lote, t2.descricao)

 

Porém não funciona, porque ele não está considerando a condição
“t2.cod_transmissao='1'” e aí dá erro porque, ao considerar todos os
registros, dá duplicidade de chave.  Encontrei no site
https://firebirdsql.org/refdocs/langrefupd25-merge.html exatamente este
exemplo, mas não funciona.

Alguém tem alguma ideia?

Obg

Sofia.

 

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas:
http://www.firebase.com.br/pesquisa_lista.html


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas:
http://www.firebase.com.br/pesquisa_lista.html





Mais detalhes sobre a lista de discussão lista