【问题标题】:Join MS Access Table to Oracle table将 MS Access 表加入 Oracle 表
【发布时间】:2017-04-07 21:13:36
【问题描述】:

我正在使用 MS Access 数据库中的一个表。该表的主键为 CLIENT_NUMBER。我的公司维护一个 Oracle 数据库,该数据库有一个包含客户联系信息(地址、电话号码、电子邮件等)的表。它还有 CLIENT_NUMBER 字段。我开始想,也许我可以加入来自不同数据库的 2 个表并运行一些查询。我在网上四处寻找,我真的找不到任何参考,所以我认为这是一个很长的问题和一个愚蠢的问题,但这可能吗?也许通过数据库链接之类的?作为参考,我使用 SQL Developer 3.2.xx 进行 sql 开发。

【问题讨论】:

  • 如果您可以在您的机器上为 Oracle 数据库设置 ODBC 数据源,那么您可以将 Oracle 表作为链接表添加到 Access 中。

标签: sql oracle ms-access join oracle-sqldeveloper


【解决方案1】:

我会使用 Access 中所谓的 sqlpassthrough 查询将 oracle 中的表复制到 Access。根据我的经验,将表链接到 oracle,性能很差,如果您还考虑加入 Access 中的本地表,可能会更糟。

直通查询非常快,因为 Access 只是根据您为直通查询识别的连接将查询发送到目标服务器/数据库以执行,因此称为“直通”。

连接字符串中的驱动程序可能不适合您,它可能需要更多信息,具体取决于您的环境中的设置方式,因此您必须解决这个问题。

  'creates the passthrough query to oracle
  With CurrentDb.CreateQueryDef("qOracleConn")
     .Connect = "ODBC;Driver={Microsoft ODBC for Oracle};Server=oracleservername;Uid=oracledbusername;Pwd=oracledbpassword;"
     .sql = "SELECT * FROM tableinoracle"
  End With

'creates the local table in access
CurrentDb.Execute "SELECT * INTO OracleClients FROM qOracleConn"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    相关资源
    最近更新 更多