SSIS – Utilizando o componente Derived Column

Imagine que temos que realizar a importação de um arquivo de texto com contenha informações como : Nome, Sobrenome e Idade. Porém, quando a idade da pessoa for inferior a 18 anos um campo boolean deverá ser preenchido como True.

Para fazer esse tipo de tarefa pelo SSIS utilizaremos o componente “Derived Column”.

Primeiro vamos criar uma estrutura tabular para armazenar os dados a serem inseridos

<br />use ImportaArquivos<br /><br />go<br /><br />CREATE TABLE tb_derivedColumn(<br /><br />id int identity(1,1) primary key,<br /><br />ch_nome varchar(100),<br /><br />ch_sobrenome varchar(100),<br /><br />bMenorde18 bit<br /><br />)<br /><br />

Agora iremos criar um arquivo de texto que contenha as seguintes informações.

Nome|Sobrenome|Idade

Dhiego|Piroto|23

Joana|D’arc|99

João|Paulo|17

Rodrigo|Dias|10

Salvaremos esse arquivo com o nome de “DerivedColumnImp.txt” em um diretório de sua preferencia.

Agora clique com o botão direito do mouse na área “Connection Managers”  e selecione a opção “new flat file connection…”. Após isso, faça uma referencia ao arquivo que criamos anteriormente, selecionando a primeira linha como cabeçalho.

Image

Clique em “OK” e depois adicione um componente “data flow task” ao projeto, de um duplo clique nele e adicione o componente  “Flat data source” e clique duas vezes nele.

Preencha listbox com a conexão que acabamos de criar (txtCnn), clique em columns e depois “OK”.

Agora adicionaremos o componente que irá atender a nossa regra, e validará a idade da pessoa, insira no projeto um componente “derived column” e faça a ligação entre o flat file e ele.; Após isso, clique 2x no novo componente.

Na aba esquerda, maximize o item “columns” e arraste o campo “idade” para a grid inferior. Após isso, preencha o campo expression com o seguinte código:

Idade > “18” ? 0:1 através esta expressão será validada a idade da pessoa e um valor booleano será retornado.

Image

Adicione um componente OLE DB Destination ao seu projeto, crie uma conexão com o DB onde criamos a tabela (passo 1) .

Image

Clique na aba “columns” e faça o apontamento das colunas e clique em OK.

Image

Execute a DTS.

Image

E confira o resultado no Management Studio.

Image

É isso galera!

Abraços

Dhiego PIroto

Anúncios

Sobre dhiegopiroto
Graduando em Sistemas de Informação, apaixonado por tecnologia, literatura e musica. Possui experiencia com desenvolvimento em T-SQL, XML, XSD e administração de bancos de dados SQL Server; Detém os titulos de MCP e MCTS SQL Server 2008.

One Response to SSIS – Utilizando o componente Derived Column

  1. Dhiego,

    Muito show a dica …

    Abs.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Alex Souza

"Aprendendor a Aprender e Aprendendo a Ensinar (inclusive Máquinas)!"

Blog - Thiago Carlos de Alencar

Aprendendo SQL Server !

SQL Authority with Pinal Dave

SQL Server Performance Tuning Expert

Vitor Fava

SELECT (CrazyIdeas*2), (InsaneIdeas*100), MyExperience FROM MyBigHead WHERE InsaneLevel > 1000

Think Think SQL

DBCC DumpMemory 'TECH','ALL'

Gustavo Maia Aguiar

Artigos, dicas e algumas reflexões sobre o SQL Server

Kimberly L. Tripp

DBCC DumpMemory 'TECH','ALL'

Thiago Zavaschi R2

www.zavaschi.com

Blog do Luti

DBCC DumpMemory 'TECH','ALL'

Luan.Moreno a.k.a [SQL.Soul]

Lead Database Consultant at Pythian

Blog do Leka

let's make things better

%d blogueiros gostam disto: