Importando uma planilha Excel no SQL Server
domingo, 17 de janeiro de 2010
O objetivo desse script é importar de uma forma bem simples, uma planilha XLS do Excel para o Banco de Dados.
O procedimento é útil principalmente quando o cliente já possui, por exemplo, uma base de dados legada e a única fonte é uma planilha do Excel.
Para isso, utilizaremos a função OPENROWSET.
/*
* Projeto: Importação de planilhas Excel no SQL Server
* Autor: Luis Fernando de Souza Santos
* Data: 17/01/2010
* Versão SQL Testada: 2008 Express Edition
**/
-- Habilitando as opções avançadas
-- Por default e por questões de segurança, essas
-- opções vêm desabilitadas.
sp_configure
'show advanced options', 1
reconfigure
sp_configure
'Ad Hoc Distributed Queries', 1
reconfigure
-- Criando a tabela com os meus atributos da planilha
create table funcionario(
Código INT NOT NULL PRIMARY KEY,
Nome VARCHAR(100) NOT NULL,
Admissão SMALLDATETIME NULL,
Departamento VARCHAR(100) NULL
);
-- Comando para importar a planilha na tabela
INSERT INTO FUNCIONARIO SELECT
* FROM OPENROWSET ('Microsoft.Jet.OleDB.4.0',
'EXCEL 8.0;Database=C:\departamento.XLS',Func$
);
-- Em "Database=C:\departamento.XLS',Func$", deve-se informar
-- o nome do arquivo, seguido do nome da "planilha" + $.
-- Exemplo: Arquivo DEPARTAMENTO.XLS, Planilha Func.
-- Pronto! Aí para visualizar, é só dar um SELECT na tabela.
Para saber mais: http://msdn.microsoft.com/en-us/library/ms190312.aspx
Marcadores:
SQL,
SQL Server