我在PC上为SQL DB创建了一个Access前端,供我公司使用。我正在使用文件ODBC连接并将ODBC文件和Access文件放在共享网络驱动器上。
当我加载访问文件时,由于某种原因,它似乎默认使用我的Windows登录凭据并完美地提取数据。当用户尝试打开文件时,他们会收到一条错误消息,提示" ODBC - 调用失败。"。我可以为他们打开链接表管理器并检查“询问新位置'然后指定ODBC文件,它一切正常......但它似乎没有保存任何东西。每当有人打开这个文件时,我都会收到错误。
知道可能出现什么问题吗?我不是交易的Access人,它似乎只是我们目前需要的工具。
- 编辑:澄清我正在使用文件ODBC连接
- 编辑2 -
嘲笑我。所以我一直在解决这个问题,我遇到了一些有趣的事情。我以我的一个用户身份登录并执行了以下操作:
有人经历过这个吗?
答案 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中没有很好地接受单引号'参数传递。将它们更改为双引号“即可。