Jump to content
Fivewin Brasil

Ajuda com SQL (insert)


ram_bh

Recommended Posts

Prezados,

Após um Insert na tabela_1 preciso fazer um Insert na tabela_2 atribuindo a uma coluna da tabela_2 com o valor de uma coluna da tabela_1 que foi gerado automaticamente após o Insert.

Insert Into TB_um ( cod_item, des_item, qtd_item, pre_item, des_item) values (....) // aqui é gerado um valor para id_um

Em seguida, preciso fazer outro Insert:

Insert Into TB_dois( id_um, cod_item ) values (....) // aqui é gerado id_dois e preciso do id_um que foi gerado no insert anterior.

Alguém para ajudar? Conseguir ser claro? Estou usando Firebird.

Obrigado!

Rodrigo Melo

Belo Horizonte

Link to comment
Share on other sites

Bom dia!

A solução pode ser de pelo menos duas maneiras no Firebird:

1) Recuperar último valor do ID da tabela_1 e depois fazer o insert na tabela_2:

Select Max(ID_campo) From Tabela_1

2) Fazer insert na tabela_2 com select na tabela_1 das colunas que deseja copiar da tabela_1:

Insert Into Tabela_2(ID_campo1, ID_campo2,outras_colunas) Values ((Select (ID_campo1, ID_campo2) From Tabela_1 Where Max(ID_campo1),outras_colunas)

No meu caso, que estou estudando a mudança de DBF para SQL usando o Firebird, optei pela 2 opção.

Mas existem funções em outros bancos SQL (MySQL, MariaDB, Oracle, SQL-Server e outros) que recuperam o valor da última chave sem pesquisa.

Mas o objetivo é tentar fazer a conversão para SQL independente do banco de dados utilizado.

Como gosto de gastronomia, construí um sistema que armazena receitas inicialmente em DBF e agora estou migrando para SQL.

Vamos ver como vai ficar...

Se alguém quiser ver como está ficando posso enviar uma demo...

Obrigado e um abraço!

Rodrigo Melo

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...