2016-08-10 4 views
2

У меня есть эта таблица, которую я хочу экспортировать в свой файл excel. До сих пор я пробовал каждую тему, но ничего не работало. Я пробовал эти 2:Как экспортировать данные таблицы sql в рабочий лист excel?

insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
    'Excel 8.0;Database=D:\excel\testing.xls;', 
    'SELECT * FROM [newStart$]') select * from OutputResult 


insert into OPENROWSET('Microsoft.ACE.OLEDB.12.0', 
    'Excel 8.0;Database=D:\excel\testing.xls;', 
    'SELECT * FROM [newStart$]') select * from OutputResult 

, когда я запускаю его с помощью струйного я получаю эту ошибку:

OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)" returned message "The Microsoft Jet database engine could not find the object 'newStart$'. Make sure the object exists and that you spell its name and the path name correctly.". 
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)". 

и когда я побежал ACE.OLEDB я получаю это одно:

OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" returned message "The Microsoft Office Access database engine could not find the object 'newStart$'. Make sure the object exists and that you spell its name and the path name correctly.". 
Msg 7350, Level 16, State 2, Line 1 
Cannot get the column information from OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)". 

Я предоставляю полное разрешение на управление учетной записью sql. плюс я бегу эти два, а также:

USE [master] 
GO 
EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'AllowInProcess' , 1 
GO 

EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'DynamicParameters' , 1 
GO 

2:

sp_configure 'show advanced options', 1 
GO 
RECONFIGURE 
GO 
sp_configure 'Ad Hoc Distributed Queries', 1 
GO 
RECONFIGURE 

Я был бы признателен, если кто-то может мне точку в правильном направлении.

+0

Вы можете использовать SSIS, чтобы сделать это, если это вариант вы имеете – Drishya1

ответ

0
strSqlQry = "Place SQL Qry Here" 
vFilePath = "Database Path" 

'Create Objects 
Set conn = CreateObject("ADODB.Connection") 
Set rs = CreateObject("ADODB.Recordset") 

'Open Connection 
conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & _ 
"Data Source=" & vFilePath & ";" & _ 
"Extended Properties=""Excel 8.0;HDR=Yes;"";" 

'Execute Qry 
rs.Open strSqlQry, conn, adOpenStatic, adLockOptimistic 

'Place recorset into excel worksheet 
ActiveSheet.Range("A1").CopyFromRecordset (NewRS) 

rs.Close 

Set rs = Nothing 
Set conn = Nothing 
+0

я m новое с концепцией sql сейчас, следует ли мне поместить это в мою процедуру магазина? – erfan

+0

Я хочу, чтобы он сгенерировал запрос sql. – erfan

0

Вы можете использовать путь написано в этой теме How do you transfer or export SQL Server 2005 data to Excel

В Excel с помощью меню Внешние данные подключения к базе данных

+0

, прежде чем я задаю вопрос, я прошел через все эти темы. но все равно спасибо. – erfan

Смежные вопросы