【问题标题】:SQL statement joining Oracle and MS SQL ServerSQL 语句加入 Oracle 和 MS SQL Server
【发布时间】:2011-04-28 21:35:30
【问题描述】:

我从未见过这种情况,但是否可以让一个 SQL 调用加入来自 Oracle 和 SQl Server 的数据?

【问题讨论】:

    标签: sql sql-server oracle join remote-server


    【解决方案1】:

    是的——Oracle 和 SQL Server 都支持链接服务器概念。这允许您使用 4 部分名称引用其他服务器。例如:

    select  *
    from    LocalDb.Schema.Table
    cross join
            OracleLinkedServer.RemoteDb.RemoteSchema.RemoteTable
    

    【讨论】:

    【解决方案2】:

    是的,Oracle 和 SQL Server 都具有允许连接到其他数据库的功能,包括不同的供应商。在 Oracle 术语中,它是一个 database link 实例,而在 SQL Server 上它被称为 Linked Server 实例。

    但是,引用实例的语法在 Oracle 和 SQL Server 之间是不同的。即:

    甲骨文:

    SELECT t.*
      FROM table_name@database_link_instance t
    

    SQL 服务器:

    SELECT t.*
      FROM linked_server_instance_name.database_name.schema_name.table_name t
    

    MySQL 是否支持链接服务器的概念?

    不,最接近 MySQL 的是 FEDERATED 引擎,它仅用于连接远程 MySQL 实例。

    PostgreSQL?

    PostgreSQL 有dblink。上次我查看 dblink(v9 之前的版本)时,它只能连接到其他 PostgreSQL 实例。

    【讨论】:

      猜你喜欢
      • 2015-10-30
      • 1970-01-01
      • 2020-02-10
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-15
      相关资源
      最近更新 更多