Autor Tópico: Copiar registros de uma tabela para outra (Resolvido)  (Lida 22251 vezes)

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #15 Online: Junho 04, 2012, 11:01:14 pm »
Vamos analisar o código do debug.

parou o erro.. porem nao copia nada

Jean Matos

  • Expert
  • *****
  • Mensagens: 956
    • Gestão de Construtoras
    • Email
Re:Copiar registros de uma tabela para outra
« Responder #16 Online: Junho 04, 2012, 11:14:34 pm »
(mssqlnative): select count(*) from dbo.cotacao_material where idcoleta = 18   (mssqlnative): UPDATE dbo.cotacao_material SET idrm = 10, datacoleta = '2012-06-02 13:27:00:000', idfornecedor = 9, prazo = 1, desconto = 0.00, preco = 0.00 WHERE idcoleta = 18   (mssqlnative): SELECT idfornecedor, razaosocial FROM dbo.tblFornecedores WHERE idfornecedor = 9 ORDER BY razaosocial   (mssqlnative): SELECT idprazo, descricao FROM dbo.prazos_pagamento ORDER BY descricao   (mssqlnative): INSERT INTO precos (cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade) SELECT cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade FROM tblDetalheRM WHERE idrm=10   (mssqlnative): INSERT INTO sc_log (inserted_date, username, application, creator, ip_user, action, description) VALUES ('2012-06-04 23:14:03', '', 'Mapa_de_coleta', 'Scriptcase', '192.168.1.100', 'update', '--> keys <-- idcoleta : 18||--> fields <-- datacoleta (old) : 2012-06-02 13:27:00.000||datacoleta (new) : 2012-06-02 13:27:00:000')   (mssqlnative): SELECT idcoleta, idrm, convert(char(23),datacoleta,121), idfornecedor, prazo, desconto, preco from dbo.cotacao_material WHERE (idcoleta = 18) order by idcoleta   



OBS:
tenho uma tabela mestre chamada cotação, que tem a tabela precos como detalhe. a intensão é pegar os dados de uma outra tabela chamada tblDetalheRM e copiar pra tabela preco que é um form tipo grid view.
« Última modificação: Junho 04, 2012, 11:18:27 pm por Jean Matos »
Sc - 6.xxx , 7.xxx e V8
Windows Server 2008 Enterpriser 64 bits
SqlServer 2008 Express 64 bits
Sistema Integrado de Gestão de Construtoras]WaveTOR - Sistema Integrado de Gestão de Construtoras
Teófilo Otoni - MG
(33)8824-2775

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #17 Online: Junho 04, 2012, 11:23:53 pm »
INSERT INTO precos (cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade) SELECT cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade FROM tblDetalheRM WHERE idrm=10

execute esse select ee veja o que retorna diretamente no banco:

Código: [Selecionar]
SELECT cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade FROM tblDetalheRM WHERE idrm=10
o insert tem que funcionar baseado nesse select.

Jean Matos

  • Expert
  • *****
  • Mensagens: 956
    • Gestão de Construtoras
    • Email
Re:Copiar registros de uma tabela para outra
« Responder #18 Online: Junho 04, 2012, 11:31:08 pm »
19           4   0.00   10   12
178           1   0.00   10     1
1330   4   0.00   10   13
3559   3   0.00   10   1

esta retornando os valores corretos.
Sc - 6.xxx , 7.xxx e V8
Windows Server 2008 Enterpriser 64 bits
SqlServer 2008 Express 64 bits
Sistema Integrado de Gestão de Construtoras]WaveTOR - Sistema Integrado de Gestão de Construtoras
Teófilo Otoni - MG
(33)8824-2775

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #19 Online: Junho 04, 2012, 11:35:13 pm »
executa o comanda diretamente no banco:

Código: [Selecionar]
INSERT INTO precos (cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade) SELECT cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade FROM tblDetalheRM WHERE idrm=10

tem que inserir.
verifica se já não tem um registro desse gravados na tabela de destino.

Jean Matos

  • Expert
  • *****
  • Mensagens: 956
    • Gestão de Construtoras
    • Email
Re:Copiar registros de uma tabela para outra
« Responder #20 Online: Junho 04, 2012, 11:37:57 pm »
fiz o insert diretamente no banco e deu certo..
porém precisa passar tb o idcoleta que esta na tabela mestre  mapa_coleta.
Sc - 6.xxx , 7.xxx e V8
Windows Server 2008 Enterpriser 64 bits
SqlServer 2008 Express 64 bits
Sistema Integrado de Gestão de Construtoras]WaveTOR - Sistema Integrado de Gestão de Construtoras
Teófilo Otoni - MG
(33)8824-2775

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #21 Online: Junho 04, 2012, 11:40:42 pm »
sc_exec_sql(
   
"INSERT INTO precos
   (idcoleta,cod_compos_compon, id_descricao_componente, dtqcomprar, idrm, codunidade)
  SELECT  {idcoleta}. cod_compos_compon, id_descricao_componente, dtqcomprar, idrm, codunidade  FROM tblDetalheRM
         WHERE idrm = {idrm}");

Jean Matos

  • Expert
  • *****
  • Mensagens: 956
    • Gestão de Construtoras
    • Email
Re:Copiar registros de uma tabela para outra
« Responder #22 Online: Junho 04, 2012, 11:50:49 pm »
funfou ..

sc_exec_sql("INSERT INTO precos
   (idcoleta,cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade)
      SELECT   {idcoleta},cod_compos_compon,id_descricao_componente,dtqcomprar,idrm,codunidade FROM tblDetalheRM 
WHERE idrm={idrm}");

Irmão...agradeço a seu espirito fraterno.
muito obrigado.

agora é só aparar as pontas..
Sc - 6.xxx , 7.xxx e V8
Windows Server 2008 Enterpriser 64 bits
SqlServer 2008 Express 64 bits
Sistema Integrado de Gestão de Construtoras]WaveTOR - Sistema Integrado de Gestão de Construtoras
Teófilo Otoni - MG
(33)8824-2775

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #23 Online: Junho 04, 2012, 11:58:23 pm »
Se está tudo justo e perfeito, vou dormir.
Amanhã estamos na luta.
Abraços.

Jean Matos

  • Expert
  • *****
  • Mensagens: 956
    • Gestão de Construtoras
    • Email
Re:Copiar registros de uma tabela para outra
« Responder #24 Online: Junho 05, 2012, 12:14:20 pm »
Como fecho o tópico como resolvido?
Sc - 6.xxx , 7.xxx e V8
Windows Server 2008 Enterpriser 64 bits
SqlServer 2008 Express 64 bits
Sistema Integrado de Gestão de Construtoras]WaveTOR - Sistema Integrado de Gestão de Construtoras
Teófilo Otoni - MG
(33)8824-2775

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Copiar registros de uma tabela para outra
« Responder #25 Online: Junho 05, 2012, 12:19:32 pm »
Só em dizer que que foi resolvido, já entendemos  como fechado.

Como fecho o tópico como resolvido?