Erro em OpenQuery no SQL Server
04/08/2015
0
Amigos, bom dia. Alguém poderia me socorrer, por gentileza?
Estou tentando realizar um insert, no SQL server, utilizando OpenQuey. Quando executo o insert ocorre o erro abaixo:
Mensagem 492, Nível 16, Estado 1, Linha 107
Nomes de colunas duplicados não são permitidos em conjuntos de resultados obtidos mediante OPENQUERY e OPENROWSET. O nome da coluna "CO_BARRA" é duplicado.
Isto ocorre porque preciso pegar o mesmo campo origem e inserí-lo em dois campos destino diferentes.
Não consegui encontrar a solução para isto.
Abs e obrigado.
Estou tentando realizar um insert, no SQL server, utilizando OpenQuey. Quando executo o insert ocorre o erro abaixo:
Mensagem 492, Nível 16, Estado 1, Linha 107
Nomes de colunas duplicados não são permitidos em conjuntos de resultados obtidos mediante OPENQUERY e OPENROWSET. O nome da coluna "CO_BARRA" é duplicado.
Isto ocorre porque preciso pegar o mesmo campo origem e inserí-lo em dois campos destino diferentes.
Não consegui encontrar a solução para isto.
Abs e obrigado.
Fabiano Rios
Curtir tópico
+ 0
Responder
Posts
04/08/2015
Jothaz
Use a tag code "</>" primeiro ícone a esquerda e post sua query.
Sem ela fica impossível sugerir algo.
Sem ela fica impossível sugerir algo.
Responder
04/08/2015
Fabiano Rios
INSERT INTO DadosRETs (DRT_DssEmpresa, DRT_NumCNPJ, DRT_NumFPAS, DRT_NumTerceiros, DRT_NumSimples, DRT_NumRAT, DRT_NumFAP, DRT_NumRATAjustado, DRT_NumCdRec, DRT_NumMesCompetencia, DRT_NumAnoCompetencia, DRT_DssTomador, DRT_NumCNPJTomador, DRT_DssControleEmpresa, DRT_DssControleTomador, DRT_DssEndereco, DRT_DssBairro, DRT_DssMunicipio, DRT_NumCEP, DRT_DssUF, DRT_NumModalidadeFGTS, DRT_DssNomeModalidade, DRT_VlnRemINSSNormal, DRT_VlnRemINSS13, DRT_VlnRemFGTSNormal8, DRT_VlnRemFGTS138, DRT_VlnRemFGTSNormal2, DRT_VlnRemFGTS132, DRT_VlnDeposito8, DRT_VlnDeposito2, DRT_VlnContrSocial8, DRT_VlnContrSocial2, DRT_VlnEncargos8, DRT_VlnEncargos2, DRT_VlnContribEmpregados, DRT_VlnContribDevida, DRT_NumtrabalhadoresINSS, DRT_NumTrabalhadoresFGTS8, DRT_NumTrabalhadoresFGTS2, DRT_DssCdBarras8, DRT_DssCdBarras2) select * from openquery (sefip, 'select distinct sfptb014_ret.no_razao_social_empresa, sfptb014_ret.nu_inscricao_empresa, sfptb014_ret.nu_fpas, sfptb014_ret.co_trcro, sfptb014_ret.co_simples, sfptb014_ret.pc_aliquota_sat, sfptb014_ret.pc_aliquota_fap, sfptb014_ret.pc_rat_ajustado, (select distinct sfptb051_aberturarclh.co_recolhimento from sfptb051_aberturarclh inner join sfptb005_pessoa on (sfptb005_pessoa.nu_pessoa= sfptb051_aberturarclh.nu_pessoa) where substring(cast(sfptb014_ret.nu_inscricao_empresa as varchar(14))from 1 for 9) = substring(cast(sfptb005_pessoa.nu_inscricao as varchar(14))from 1 for 9)), (select distinct sfptb051_aberturarclh.mm_competencia from sfptb051_aberturarclh inner join sfptb005_pessoa on (sfptb005_pessoa.nu_pessoa= sfptb051_aberturarclh.nu_pessoa) where substring(cast(sfptb014_ret.nu_inscricao_empresa as varchar(14))from 1 for 9) = substring(cast(sfptb005_pessoa.nu_inscricao as varchar(14))from 1 for 9)), (select distinct sfptb051_aberturarclh.aa_competencia from sfptb051_aberturarclh inner join sfptb005_pessoa on (sfptb005_pessoa.nu_pessoa= sfptb051_aberturarclh.nu_pessoa) where substring(cast(sfptb014_ret.nu_inscricao_empresa as varchar(14))from 1 for 9) = substring(cast(sfptb005_pessoa.nu_inscricao as varchar(14))from 1 for 9)), sfptb014_ret.no_razao_social_tomador, sfptb014_ret.nu_inscricao_tomador, sfptb014_ret.co_cntre_seguranca_empresa, sfptb014_ret.co_cntre_seguranca_tomador, sfptb014_ret.de_localizacao, sfptb014_ret.no_bairro, sfptb014_ret.no_localidade, sfptb014_ret.nu_cep, sfptb014_ret.sg_uf, sfptb082_modalidaderet.nu_modalidade_fgts, sfptb078_tpmodalidade.de_modalidade_resumida, sfptb082_modalidaderet.vr_rmnro_inss, sfptb082_modalidaderet.vr_rmnro_inss_13, sfptb082_modalidaderet.vr_rmnro_fgts_grupo1_taxa1, sfptb082_modalidaderet.vr_rmnro_fgts_13_grupo1_taxa1, sfptb082_modalidaderet.vr_rmnro_fgts_grupo2, sfptb082_modalidaderet.vr_rmnro_fgts_13_grupo2, sfptb082_modalidaderet.vr_deposito_grupo1_taxa1, sfptb082_modalidaderet.vr_deposito_grupo2, sfptb082_modalidaderet.vr_cnbco_social_grupo1, sfptb082_modalidaderet.vr_cnbco_social_grupo2, sfptb082_modalidaderet.vr_encargo_fgts_grupo1, sfptb082_modalidaderet.vr_encargo_fgts_grupo2, sfptb014_ret.vr_contrib_desc_trab, sfptb014_ret.vr_dev_prev_soc, sfptb082_modalidaderet.qt_empregado_inss, sfptb082_modalidaderet.qt_empregado_grupo1_taxa1, sfptb082_modalidaderet.qt_empregado_grupo2, (select sfptb031_grf.co_barra from sfptb031_grf where sfptb031_grf.nu_inscricao = sfptb014_ret.nu_inscricao_empresa and sfptb031_grf.ic_grupo_grf = 1), (select a.co_barra from sfptb031_grf a where a.nu_inscricao = sfptb014_ret.nu_inscricao_empresa and a.ic_grupo_grf = 2) from sfptb014_ret inner join sfptb055_opcaosimples on (sfptb055_opcaosimples.co_simples = sfptb014_ret.co_simples) inner join sfptb082_modalidaderet on ( (sfptb082_modalidaderet.nu_inscricao_tomador = sfptb014_ret.nu_inscricao_tomador) and (sfptb082_modalidaderet.nu_inscricao_empresa = sfptb014_ret.nu_inscricao_empresa)) inner join sfptb078_tpmodalidade on (sfptb078_tpmodalidade.nu_modalidade_fgts = sfptb082_modalidaderet.nu_modalidade_fgts)')
o erro ocorre nos dois últimos campos, que tenho que retornar obrigatoriamente, para popular a tabela destino
Responder
Clique aqui para fazer login e interagir na Comunidade :)