Exportar dados para planilha excel – INSERT INTO OPENROWSET

INSERT INTO OPENROWSET

——————————————————-

–Criando o banco

CREATE DATABASE TESTE
GO
USE TESTE


–Criando a tabela
CREATE TABLE PESSOA
(
COD INT,
NOME VARCHAR(50)
)

– Habilitar a visibilidade das opções avançadas
EXEC sp_configure ‘show advanced option’, ’1′;
reconfigure

– Habilitar a utilização de OPENROWSET
exec sp_configure ‘Ad Hoc Distributed Queries’,1
reconfigure

exec sp_configure ‘xp_cmdshell’,1
reconfigure

–EXPORTAR DADOS
INSERT INTO OPENROWSET(‘Microsoft.Jet.OLEDB.4.0′,
‘Excel 8.0;Database=C:\DADOS\PESSOA.XLS’,
‘SELECT COD, NOME FROM [NOMES$]‘)
SELECT * FROM PESSOA

——————————————————
O erro:
OLE DB provider “Microsoft.Jet.OLEDB.4.0″ for linked server “(null)” returned message “O mecanismo de banco de dados Microsoft Jet não pôde encontrar o objeto ‘NOMES

. Certifique-se de que o objeto exista e de ter digitado seu nome e o caminho corretamente.”.
Msg 7350, Level 16, State 2, Line 1
Cannot get the column information from OLE DB provider “Microsoft.Jet.OLEDB.4.0″ for linked server “(null)”.

——————————————————

Para resolver o problema acima:

Para funcionar é necessário existir no caminho:
C:\DADOS\
a planilha:
PESSOA.XLS

Mesmo que sem dados nenhum – Uma planilha modelo.

O objeto NOMES se refere a qual planilha está usando, dentro do modelo criado acima.

Por exemplo, quando você cria uma planilha excel ele te cria 3 planilhas no rodapé(Plan1,Plan2,Plan3), neste caso estou dizendo que minha planilha terá:

(NOMES,Plan2,Plan3)

No comments yet.