1
resposta

Erro em Inserir Destino

Estou com esse erro abaixo e ainda não consegui resolver:

[Inserir Destino [178]] Erro: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E2F.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 11.0"  Hresult: 0x80040E2F  Description: "A instrução foi finalizada.".
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 11.0"  Hresult: 0x80040E2F  Description: "A instrução INSERT conflitou com a restrição do FOREIGN KEY "FK_Fato_001_Dim_Cliente". O conflito ocorreu no banco de dados "DW_SUCOS", tabela "dbo.Dim_Cliente", column 'Cod_Cliente'.".
[Inserir Destino [178]] Erro: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR.  The "Inserir Destino.Entradas[Entrada de Destino OLE DB]" failed because error code 0xC020907B occurred, and the error row disposition on "Inserir Destino.Entradas[Entrada de Destino OLE DB]" specifies failure on error. An error occurred on the specified object of the specified component.  There may be error messages posted before this with more information about the failure.
[SSIS.Pipeline] Erro: SSIS Error Code DTS_E_PROCESSINPUTFAILED.  The ProcessInput method on component "Inserir Destino" (178) failed with error code 0xC0209029 while processing input "Entrada de Destino OLE DB" (191). The identified component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running.  There may be error messages posted before this with more information about the failure.
1 resposta

Olá, Isabella, tudo bem?

Desde já peço desculpas pela demora em obter retorno.

O erro aponta um conflito de chave estrangeira (FOREIGN KEY) . A chave estrangeira é a "FK_Fato_001_Dim_Tempo" na tabela "dbo.Dim_Tempo" no banco de dados "DW_SUCOS", na coluna 'Cod_Dia'. O problema pode ter ocorrido porque, quando a dimensão "Tempo" foi criada inicialmente, o intervalo de anos estabelecido foi de 2013 a 2013. No entanto, ao carregar a tabela de fatos "Fato001", está sendo utilizado o ano 2014.

Para resolver o problema, você pode alterar o pacote responsável pela carga da dimensão "Tempo" e inserir o ano de 2014 no intervalo de anos.

Execute novamente o fluxo do pacote e verifique se as entradas com o ano 2014 são corretamente adicionadas à dimensão "Tempo" no banco de dados "DW_SUCOS".

Uma vez que a carga da dimensão "Tempo" tenha sido atualizada com sucesso, retorne ao pacote de carga da tabela de fatos "Fato001" e execute o processo novamente.

Espero ter ajudado.

Caso surja quaisquer dúvida, fico à disposição.

Abraços e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software