访问ODBC问题:ODBC - 调用失败

时间:2014-04-23 19:40:40

标签: sql ms-access odbc ms-office

我在PC上为SQL DB创建了一个Access前端,供我公司使用。我正在使用文件ODBC连接并将ODBC文件和Access文件放在共享网络驱动器上。

当我加载访问文件时,由于某种原因,它似乎默认使用我的Windows登录凭据并完美地提取数据。当用户尝试打开文件时,他们会收到一条错误消息,提示" ODBC - 调用失败。"。我可以为他们打开链接表管理器并检查“询问新位置'然后指定ODBC文件,它一切正常......但它似乎没有保存任何东西。每当有人打开这个文件时,我都会收到错误。

知道可能出现什么问题吗?我不是交易的Access人,它似乎只是我们目前需要的工具。

- 编辑:澄清我正在使用文件ODBC连接

- 编辑2 -

嘲笑我。所以我一直在解决这个问题,我遇到了一些有趣的事情。我以我的一个用户身份登录并执行了以下操作:

  1. 创建一个新的访问文件,该文件引用桌面上的文件ODBC连接。
  2. 使用桌面上的ODBC文件在访问文件中创建3-4个链接表。
  3. 保存并关闭访问文件。
  4. 重新打开文件....我收到ODBC连接错误!在新文件中一切都很好之后!
  5. 有人经历过这个吗?

4 个答案:

答案 0 :(得分:1)

我假设您没有在每台用户PC上正确安装ODBC。 您应该创建ODBC定义。您可以直接在注册表中创建相关语句,请参阅此分支 HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBC.INI

如果你给你的开发者机器上的名称相同,那么它的工作原理。这就是我使用我在我的机器上开发的客户端应用程序,然后在客户端站点安装它的方式

答案 1 :(得分:1)

在碰到同样问题后,我终于发现我在Access窗体上有一个复选框,默认为NULL。由于我将后端放入SQL,因此复选框字段不能为NULL,但“ ODBC调用失败”消息无济于事。我最终尝试通过Access直接在表上添加一条记录,它提供了更多信息。我将所有复选框都默认设置为零,这样就解决了问题!

答案 2 :(得分:0)

好吧,我能够缩小这个问题的范围。出于某种原因访问不断尝试使用Windows凭据而不是我的ODBC文件中的用户名。我无法找到解决方法,但我能够通过在SQL Server上为需要访问权限的Windows用户创建登录来解决此问题。

我对于需要管理更多登录信息感到非常高兴,但这就是我为解决此问题所做的工作。

答案 3 :(得分:0)

我不是要复活死者,但我有同样的错误是由于另一个问题。

我正在使用ODBC连接。使用“设计”运行按钮运行文件时,它运行良好。当我尝试使用导航窗格并双击它时,会发生错误。

我的查询的结构就是问题所在;我正在移植SQL Server查询,并且在Access中没有很好地接受单引号'参数传递。将它们更改为双引号“即可。