EXEC sp_configure 'show advanced options', 1  
GO
RECONFIGURE
GO
EXEC sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
select * from OpenRowSet
('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=e:\book1.xlsx','select * from [test1$]')错误提示:
消息 7399,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 报错。访问被拒绝。
消息 7350,级别 16,状态 2,第 1 行
无法从链接服务器 "(null)" 的 OLE DB 访问接口"Microsoft.ACE.OLEDB.12.0"获取列信息。

解决方案 »

  1.   

    楼主又发一贴哈,看样子很急,那我就扯两句哈2005在使用openrowset和opendatasource时有很多问题
    而且大家都没有好的解决方案
    有时候捣鼓捣鼓就搞定了 但是还是不知道哪出的问题对了你的sql 是打补丁没 sp的
    SELECT SERVERPROPERTY('productlevel')
    这个可以看到 如果是rtm的就是没打了
    你试试吧导入数据还是ssis  或者bcp好使,不过后者只能搞文本文件
      

  2.   


    --用这个试试
    SELECT * 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
       'Data Source="e:\book1.xlsx";User ID=Admin;Password=;Extended properties=Excel 5.0')...[test1$]
      

  3.   

    确实很着急,网上介绍的各种方法都尝试过了,都没有找到解决的办法  ,
    我测试了一下,真的是RTM的,没有打补丁的不行么?如果要解决,我接下来要怎么做?
      

  4.   

    --> Jet 引擎访问 Excel 97-2003   select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', 'select * from [Sheet1$]')    
    select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', [Sheet1$])    
    select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls')...[Sheet1$]    
    select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Data Source=D:\97-2003.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1"')...[Sheet1$]    
     --> ACE 引擎访问 Excel 97-2003   select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', 'select * from [Sheet1$]')    
    select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls', [Sheet1$])    
    select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\97-2003.xls')...[Sheet1$]    
    select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:\97-2003.xls;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]    
       
    --> ACE 引擎访问 Excel 2007   select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx', 'select * from [Sheet1$]')    
    select * from OpenRowSet('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx', [Sheet1$])    
    select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;HDR=Yes;IMEX=1;Database=D:\2007.xlsx')...[Sheet1$]    
    select * from OpenDataSource('Microsoft.ACE.OLEDB.12.0', 'Data Source=D:\2007.xlsx;Extended Properties="Excel 12.0;HDR=Yes;IMEX=1"')...[Sheet1$]