日期:2014-05-18  浏览次数:20641 次

sql基本语句
我有一个数据库表,想把内容都写入excel中,为此我写了段程序:

alter procedure [dbo].[dataToExcel]
@path nvarchar(200),
@months nvarchar(200)

as 
begin
declare @sqlstr nvarchar(200)
if(@months = 1)
set @sqlstr = 'insert into OPENROESET(''MICROSOFT.JET.OLEDB.4.0'',''excel 8.0;HDR=yes; database='+@path+''',[sheet1$]) select * from A order by ID'
end



path传的值为 path = 'E;\111\222\333\444\WebUI\excel_document\data.xls';
不知道为何报错为:
The OLE DB provider "MICROSOFT.JET.OLEDB.4.0" for linked server "(null)" reported an error. The provider did not give any information about the error.
Cannot initialize the data source object of OLE DB provider "MICROSOFT.JET.OLEDB.4.0" for linked server "(null)".
请指教

------解决方案--------------------
1 excel文件关掉了吗
2 E;\111\222\333\444\WebUI\excel_document\data.xls e:还是e;
------解决方案--------------------
还没执行就报错?
你还没 execute 呢!
------解决方案--------------------
有没有在外围应用配置管理器中启用即席远程查询?
------解决方案--------------------
Cannot initialize the data source object of OLE DB provider "MICROSOFT.JET.OLEDB.4.0" for linked server "(null)".

无法初始化OLE DB 问题

------解决方案--------------------
path = 'E;\111\222\333\444\WebUI\excel_document\data.xls' 红色部分应该是:吧?