xlsx 文件导入数据库:
select * into sypublic.dbo.tpro2 from OpenDataSource('Microsoft.ACE.OLEDB.12.0','Data Source="D:\ftproot\LocalUser\aimin.luo\doc\tpro.xlsx";Extended properties= "Excel 12.0;HDR=YES;IMEX=1"')...[Sheet1$]
报错信息如下:
因为 OLE DB 访问接口 'Microsoft.ACE.OLEDB.12.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。
解决路径:
发现安装的是32位的数据库引擎,于是:
1)卸载 access 2007
2)安装 access 2010 (AccessDatabaseEngine_X64)
出现新的错误信息:
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 的数据源对象
3)控制面板/管理工具/服务/SQL Server (SQLEXPRESS) --> 右键 属性 --> 登录 --> 设置: 登录身份=本地系统账户 --> 重启该服务(不必重启电脑)
4)OK!
以上设置对 xls文件也适用。
select * into sypublic.dbo.tpro2 from OpenDataSource('Microsoft.ACE.OLEDB.12.0','Data Source="D:\ftproot\LocalUser\aimin.luo\doc\tpro.xlsx";Extended properties= "Excel 12.0;HDR=YES;IMEX=1"')...[Sheet1$]
报错信息如下:
因为 OLE DB 访问接口 'Microsoft.ACE.OLEDB.12.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。
解决路径:
发现安装的是32位的数据库引擎,于是:
1)卸载 access 2007
2)安装 access 2010 (AccessDatabaseEngine_X64)
出现新的错误信息:
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 的数据源对象
3)控制面板/管理工具/服务/SQL Server (SQLEXPRESS) --> 右键 属性 --> 登录 --> 设置: 登录身份=本地系统账户 --> 重启该服务(不必重启电脑)
4)OK!
以上设置对 xls文件也适用。