Question: How to Export Data From SQL Server to Microsoft Excel Datasheet?
Answer:
Enable Ad Hoc Distributed Queries. Run following code in SQL Server Management Studio – Query Editor.
EXEC sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXEC sp_configure 'Ad Hoc Distributed Queries', 1; GO RECONFIGURE; GO
Create Excel Spreadsheet in root directory c:\contact.xls (Make sure you name it contact.xls). Open spreadsheet, on the first tab of Sheet1, create two columns with FirstName, LastName. Alternatively, you can download sample Spreadsheet from here.
Run following code in SQL Server Management Studio – Query Editor.
USE [AdventureWorks]; GO INSERT INTO OPENROWSET ('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=c:\contact.xls;', 'SELECT * FROM [Sheet1$]') SELECT TOP 5 FirstName, LastName FROM Person.Contact GO
Open contact.xls spreadsheet you will see first five records of the Person.Contact inserted into the first two columns.
Make sure your spreadsheet is closed during this operation. If it is open, it may throw an error. You can change your spreadsheet name as well name of the Sheet1 to your desired name.
Let me know what you think of this blog post. It is very short but indeed a very effective query. I have been using it for a while and it works just fine.
Reference : Pinal Dave (https://blog.sqlauthority.com)
231 Comments. Leave new
how to delete date Before inser insert into OPENROWSET (‘Microsoft.ACE.OLEDB.12.0’,
‘Excel 8.0;Database=C:\Scale\contact.xls;’,
‘SELECT * FROM [Sheet1$]’) select * from ScaleUpdate2
Hi,
how can I specify the start cell of the Excel file where to export data from SQL ?
Eunhee… the best way to do this is to create a refreshable Excel report based on a SQL Server stored procedure.
I do not know if Pinal wrote any articles on that. :(
Thank You
Your welcome @Hasha.
Hi, I have a problem with openrowset. I have:
*SQLServer2012
*WinServer2012R2 Standard
*MicrosoftOffice2010 64
*AcessDatabaseEngine 64
I want run command:
insert into OPENROWSET(‘Microsoft.Jet.OLEDB.12.0’, ‘Excel 12.0;Database=C:\testing.xls;’, ‘SELECT * FROM [Plan1$]’) select * from tabela
and return the message:
“the ole db provider “microsoft.jet.oledb.12.0″ has not been registered”
What I need to do to fix this error? Help me Please!
can you try microsoft.ace.oledb.12.0