我正在使用 Excel 2010 和 sql server 2008 将数据从 excel 导入到 sql server。但是我不成功。你能检查一下我在做什么吗?
sp_CONFIGURE 'show advanced options',1
RECONFIGURE
GO
sp_CONFIGURE 'optimize for ad hoc workloads',1
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\Users\anayak\AppData\Roaming\Microsoft\Templates\Book1.xlsx; HDR=YES;IMEX=1','SELECT * FROM [sheet1$]');
我在哪里得到这个错误
OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" returned message "Unspecified error".
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)".
我为 Microsoft.ACE.OLEDB.12.0 安装了 Microsoft Access Database Engine 2010 Redistributable。
但是当我使用命令“ODBCAD32.EXE”来检查我的 excel 版本时,我得到了 14.00.4760.1000。
然后我尝试了我的连接字符串 -
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.14.0','Excel 14.0;Database=C:\Users\anayak\AppData\Roaming\Microsoft\Templates\Book1.xlsx; HDR=YES;IMEX=1','SELECT * FROM [sheet1$]');
但它又没用。
你能建议我在这里做错什么吗?
谢谢。