Importando planilha do Excel para o SQL Server

Quem nunca precisou realizar a importação de uma planilha para o SQL Server, pois é, acredito que muitos já tiveram esse problema, diante dessa situação irei fazer um passo a passo de como realizar essa importação.

Antes de realizar a importação é necessário alterar algumas configurações no SQL Server.

[sourcecode language=”sql”]

EXEC sp_configure ‘show advanced options’,1
GO
reconfigure with override
GO
EXEC sp_configure ‘Ad Hoc Distributed Queries’,1
GO
reconfigure with override
GO

[/sourcecode]

Após executar os comandos acima, basta realizarmos a importação, conforme procedimentos descritos abaixo:

Primeiramente temos que entender o arquivo excel.

A primeira linha são os campos de nossa tabela como pode ser  visto na imagem abaixo, da segunda linha em diante são os dados de nossa tabela.

Pronto, já entendemos o arquivo do Excel, agora vamos fazer frase T-SQL para importamos.

[sourcecode language=”sql”]

SELECT * INTO CADASTRO FROM OPENROWSET(‘Microsoft.ACE.OLEDB.12.0’,

‘Excel 8.0;Database=c:CAD.xls’,

‘SELECT * FROM [CAD$]’)

[/sourcecode]

O select acima está criando tabela CADASTRO conforme os campos da primeira linha do arquivo do Excel.

O parâmetro a seguir Database=c:CAD.xls é o nome e onde meu arquivo do Excel está armazenado.

O parâmetro [CAD$] é a sheet (página) do Excel onde estão as informações.

Pronto,feito os procedimentos acima, basta executar que nosso arquivo do Excel será importado para nossa tabela do banco de dados. Caso persista alguma dúvida ou dificuldade entre em contato através do Envie sua dúvida ou sugestão.

3 comentários

  1. Existe uma forma de definir explicitamente os tipos das colunas da tabela “Cadastro” ao invés de usar os dados da primeira linha da planilha?
    Obrigado

    • Nunca precisei, pois, sempre jogo os dados da planilha em tabelas temporárias e depois coloco os dados na tabela oficial, faço isso, por segurança e por ter mais recursos caso seja necessário tratar algum dado antes de colocar na tabela oficial.

Deixe um comentário para Claudio QuevedoCancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.