使用 Oracle 的 ODBC 链接表登录 Access 2007

Posted

技术标签:

【中文标题】使用 Oracle 的 ODBC 链接表登录 Access 2007【英文标题】:Login Access 2007 with ODBC linked table from Oracle 【发布时间】:2010-03-03 20:53:56 【问题描述】:

我正在将 Access 2003 迁移到 2007。有很多来自 Oracle 的链接表。我创建一个指向 Oracle 实例的 ODBC 点,然后在 Access 中通过 ODBC 链接所有表。我使用此代码登录,因此不会弹出“Oracle ODBC Driver Connect”对话框询问密码:

  strConnect = "ODBC;DATABASE=" & strFCPD & ";DSN=PBRIS;UID=xxxxx;PWD=xxxxx"
  Dim wsp As Workspace
  Set wsp = DBEngine.CreateWorkspace("xxx", "xxx", "xxx", dbUseODBC)
  Set dbs = OpenDatabase("", False, True, strConnect)   ' connect via regular ODBC
  dbs.Close

它在 2003 年运行良好,但在 2007 年不行。这里有什么问题?我该怎么办?

【问题讨论】:

您在 A2007 中遇到什么错误? 【参考方案1】:

Access 2007 是否使用与 Access 2003 不同的 ODBC 驱动程序?如果是这样,您需要创建一个使用 Access 2007 驱动程序的新 DSN。看起来现有的 DSN 被命名为“PBRIS”。进入 ODBC 管理器并使用管理员工具的系统 DSN 选项卡创建一个新的 DSN,并指定 Access 2007 驱动程序而不是 Access 2003 驱动程序。你可能想给它起个不同的名字——也许是“PBRIS2007”之类的东西。您需要更改构建连接字符串的代码以指定新的数据源名称。

我希望这会有所帮助。

【讨论】:

ODBC 驱动程序用于 Oracle,而 ODBC 与 Access 无关。因此,Access 版本之间的 ODBC 驱动程序没有区别。

以上是关于使用 Oracle 的 ODBC 链接表登录 Access 2007的主要内容,如果未能解决你的问题,请参考以下文章

MS Access:在设计指南视图中创建链接表不显示要链接的表?

通过 ODBC 访问 - Oracle DEFAULT 不起作用

访问 64 位 ODBC

将链接表添加到 Access 2003,同时在 MDB 中保留 ODBC 连接信息

使用 Microsoft Access ODBC 链接到 Oracle 控制哪些列成为主键

以Oracle为例说明如何通过ODBC将数据库中的指定表导出到MDB数据库