我花了最近几个小时尝试使用OpenRowSet或OpenDataSource将Excel文件的内容导入到SQL中,但是我得到了同样的错误。
我目前正在使用SQL Server 2014 X64,Excel 2016 64位,Windows Server 2008R2 64位
我正在使用的代码是
SELECT * FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0',
'Data Source=S:\Refunds\file.xlsx;Extended Properties=Excel 12.0')...[test]
或
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=S:\Refunds\file.xlsx', [test])
我得到的错误信息是: -
Msg 7314,Level 16,State 1,Line 39 链接服务器“(null)”的OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”不包含表“test”。该表不存在或当前用户没有该表的权限。
这里的假设是我从S:\驱动器打开files.xlsx文件并查看名为test的选项卡
我已经尝试将文件的路径更改为完整的UNC路径并尝试将文件移动到C驱动器但仍然收到相同的消息,是否有人能指出我正确的方向?
由于
答案 0 :(得分:0)
我认为应该是:
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=S:\Refunds\file.xlsx', [test$])