.NET

28 jan, 2011

Importar dados de um arquivo txt para uma base de dados com Integration Services – Parte 2

Publicidade

Vimos no artigo anterior como importar dados de um arquivo txt que continha as colunas separadas por (;). E é baseado nele que agora veremos como fazer o mesmo procedimento utilizando colunas com valores fixos.

O primeiro passo é limpar a tabela MUNICIPIO que criamos no banco de dados, depois faça: DELETE FROM MUNICIPIO.

Em seguida, vamos criar um novo arquivo txt, o qual está formatado da seguinte forma:

Salve este arquivo com o nome municipio2.txt.

Agora abra o projeto que você desenvolveu no artigo anterior no SQL Server Business Intelligence Development Studio. Depois acesse a guia Data Flow e clique duas vezes no componente Flat File Source.

Com a janela Flat File Source Editor aberta, clique no botão New para criar uma conexão com o novo arquivo txt.

Na janela Flat File Connection Manager Editor, clique em browser, selecione o arquivo municipio2.txt, e na opção Format selecione Ragged right, conforme imagem:

Nas opções à sua esquerda selecione Columns. Nessa opção, poderemos delimitar as colunas que desejamos. Veja que as colunas já são delimitadas pelo próprio Integration Services:

Na opções à sua esquerda, selecione Advanced. Repare que as colunas foram criadas e já com com o tamanho necessário. Agora vamos alterar algumas informações:

Column0

  • Name: CD_MUNICIPIO
  • InputColumnWidth: 4
  • DataPrecision: 4
  • DataType: numeric[DT_NUMERIC]

Column1

  • Name:  NM_MUNICIPIO
  • InputColumnWidth: 18
  • DataType: string[DT_STR]
  • OutputColumnWidth: 18

Column2

  • Name: CD_UF
  • DataType: string[DT_STR]
  • OutputColumnWidth: 2

Agora exclua a Column,3 ela não será utilizada, e dê OK.

Os demais passos não precisam ser alterados, devem ficar da mesma forma que foi explicado no artigo anterior (componente ADO.NET Destination).

Execute o projeto e veja que a integração será realizada. Também recomendo que você leia esse artigo no site do MSDN Brasil com algumas informações importantes.

Até a próxima!