【问题标题】:Cannot access ODBC DB with MS Access2007无法使用 MS Access 2007 访问 ODBC DB
【发布时间】:2012-02-22 14:31:22
【问题描述】:

我在 Access 中通过 ODBC 访问 Oracle 数据库时遇到问题,希望有人能给我一些建议。我花了很长时间试图找到解决方案,但没有找到任何有用的东西。

我在 ODBC 中设置了访问 Oracle 9 数据库的连接。我可以使用 ODBC 管理员上的测试选项并收到测试成功消息。我还可以使用 SQL*PLUS 连接到数据库。但是,当我尝试在 Access 2007 中创建新的链接表并使用 ODBC 选项时,尝试连接时出现以下错误:

ODBC--Call failed.

[Oracle][ODBC][Ora]ORA-12154:TNS:无法解析服务名称 (#12154)[Microsoft][ODBC Driver Manager]Driver's SQLSetConnectAttr failed IM006 0 [Microsoft][ODBC Driver Manager]Driver's SQLSetConnectAttr failed (#0)

我知道 TNS 查找正在工作,因为 ODBC 管理工具与 tnsping 一样工作。问题是,为什么它在 Access 之外可以工作,而 Access 却不能呢?

编辑(2012-02-22 15:05):刚刚在另一台 PC 上尝试过,同样的事情发生了,虽然另一个用户登录并且连接对他们有效,所以它似乎链接到我的 WinXP 配置文件。这有帮助吗?

任何建议将不胜感激。

BBz

【问题讨论】:

  • 标题中无需加上“已解决”。只需将您的答案作为您所做的答案。最终,您将能够将自己的答案标记为“已接受”答案。同时,有人可能会指出一些其他内容,从而进一步加深您对问题的理解。

标签: oracle ms-access odbc ms-access-2007


【解决方案1】:

我想我已经解决了这个问题,但它需要一些挖掘。使用 Sysinternals 的 Process Monitor,我发现 Access 在我的配置文件的“我的文档”文件夹中找到了一个 sqlnet.ora 文件,并且优先使用它而不是全局 tnsnames.ora 文件。

我们之前禁用了 sqlnet.ora(重命名了 Oracle 文件夹中的文件),但 Access 显然会在其他位置检查它。我已重命名文件,现在可以通过 ODBC 按预期访问数据库。

你可以学到有趣的东西!

希望有一天有人会发现这很有用。

感谢阅读 BBz

【讨论】:

  • 鲍勃,你能详细说明你的答案吗?我遇到了同样的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-26
  • 2010-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
相关资源
最近更新 更多