2011-11-16 83 views
10

这不是问题,但是这篇文章可能对社区有用,因为我无法在Internet上找到答案。从SQL Server查询“Microsoft.ACE.OLEDB.12.0”提供程序时出错

测试在

  • 的Windows 2008 R2 x64和Windows 2003 x64的
  • 的SQL Server 2008 SP3 64位
  • 提供商Microsoft.ACE.OLEDB.12.0 64

SQL服务器运行在不是本地计算机管理员的域帐户下。 SQL Server连接认证是Windows。

的问题是:

创建和使用链接的服务器或即席查询使用此提供程序时,您可能会收到错误这样的:

OLE DB提供程序“MSDASQL”链接服务器“XXX “返回的消息”[Microsoft] [ODBC驱动程序管理器]驱动程序的SQLSetConnectAttr失败“

OLE DB provider”MSDASQL“for linked server”xxx“returned message”[Microsoft] [ODBC dBASE Driver]您的网络访问被中断。继续,关闭数据库,然后再次打开它。

无法初始化OLE DB提供程序的数据源对象“MSDASQL”链接服务器“XXX”

找不到可安装ISAM

OLE DB提供程序“MSDASQL”链接服务器“XXX”返回的消息“[微软] [ODBC dBase驱动程序]常规错误无法打开注册表项临时(挥发性)王牌DSN过程0x16f4主题0x2728 DBC 0x1ce64ae8的Xbase”

的原因是供应商创建的SQL Server的一个临时文件域帐户的临时fo lder,使用用户连接的凭证。普通用户没有这样的权限。

+0

Sql服务器正在域帐户下运行,该域帐户不用于在该机器上登录。请澄清这一点。 –

回答

1

的解决方案是对SQL Server的域帐户的临时文件夹
授予“修改”权限到SQL Server的用户。 此文件夹通常是

  • 的Windows 2003: “C:\ Documents和 设置\ sql_server_account_name \本地设置的\ Temp \”
  • 的Windows 2008:“C:\用户\ sql_server_account_name \应用程序数据\本地的\ Temp \“
+0

我提出了Boogier最初发布的解决方案,作为他的问题的一部分。作出了CW,所以我没有得到不必要的代表。 –

相关问题