Maseroli 0 Denunciar post Postado Junho 4, 2009 Boa tarde a todos, Estou precisando juntar 3 tabelas, isso faço sem problemas com o comando abaixo select * from tbl_funcionarios FUN LEFT JOIN Tbl_EmpresaOnibus EMP ON (FUN.COD = EMP.CODIGO) LEFT JOIN tbl_LogFuncUsaOnibus LOB ON ( LOB.CODFUNIONARIO = FUN.COD) Agora eu preciso pegar algumas colunas com todos os registos acima e jogar para outra tabela. Tentei usar o comando abaixo mas nao tive sucesso With ADQ_Encerramento do Begin Close; SQL.Clear; SQL.Add('INSERT INTO Tbl_HistoricoVT (base, Projeto, Cod_Funcionario,MesAnoReferencia, NomeEmpresaBUS, ValorUnitario, Qtde_MesVT, UserCria)'); SQL.Add('VALUES (:pBASE, :pPROJETO, :pCOD_FUNCIONARIO, :pMESANOREFERENCIA, :pNOMEEMPRESABUS, :pVALORUNITARIO, :pQTDE_MES, :pUSERCRIA)'); ExecSQL; O que eu estou fazendo de errado? Desde já agradeço Mário Sergio Compartilhar este post Link para o post Compartilhar em outros sites
Daniel Sanches 0 Denunciar post Postado Junho 4, 2009 pelo que percebi é o seguinte: With ADQ_Encerramento do Begin Close; SQL.Clear; SQL.Add('INSERT INTO Tbl_HistoricoVT (base, Projeto, Cod_Funcionario,MesAnoReferencia, NomeEmpresaBUS, ValorUnitario, Qtde_MesVT, UserCria)'); SQL.Add('VALUES (:pBASE, :pPROJETO, :pCOD_FUNCIONARIO, :pMESANOREFERENCIA, :pNOMEEMPRESABUS, :pVALORUNITARIO, :pQTDE_MES, :pUSERCRIA)'); ExecSQL; assim você está definindo diversos parametros (pBASE, pPROJETO, pCOD_FUNCIONARIO...etc) você precisa definir agora os valores desses parametros, antes do comando ExecSQL; parambyname('pBASE').asString:= 'O VALOR QUE você QUISER COLOCAR OU O VALOR DE UM CAMPO'; abraço !! Compartilhar este post Link para o post Compartilhar em outros sites
Maseroli 0 Denunciar post Postado Junho 4, 2009 Caro Daniel, Muito obrigado mesmo. Eu nunca precisei juntar tantas tabelas para atualizar apenas uma, e eu precisa disso meio que urgente. Eu consegui resolver meu problema com o comando abaixo. INSERT INTO Tbl_HistoricoVT (base, Projeto, cod_funcionario, MesAnoReferencia) SELECT LBU.Codigo, FUN.ProjetoCG, FUN.Cod, LBU.MesAnoReferencia from tbl_LogFuncUsaOnibus LBU LEFT JOIN Tbl_EmpresaOnibus EMP ON (LBU.CodigoOnibus = EMP.CODIGO) LEFT JOIN Tbl_funcionarios FUN ON (FUN.Cod = LBU.codfunionario) Funcionou direitinho, Caso alguem precise para eventuais consultas. Mário Sergio Compartilhar este post Link para o post Compartilhar em outros sites