Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL开发人员:从连接的SQL Server数据库和连接的Oracle数据库连接表_Sql_Sql Server 2005_Oracle11g_Oracle Sqldeveloper - Fatal编程技术网

SQL开发人员:从连接的SQL Server数据库和连接的Oracle数据库连接表

SQL开发人员:从连接的SQL Server数据库和连接的Oracle数据库连接表,sql,sql-server-2005,oracle11g,oracle-sqldeveloper,Sql,Sql Server 2005,Oracle11g,Oracle Sqldeveloper,我们正在从SQL Server 2005迁移到Oracle 11G。我一直在尝试使用存储在SQLServer表中的数据更新Oracle表 使用SQL Developer,我完成了以下工作: 已创建到Oracle数据库的连接 Created Connection name --> e9_crp Supplied User name and Pass Defined Host Name and SID 我还创建了到包含引用数据的SQL Server的连接 Connection Name -

我们正在从SQL Server 2005迁移到Oracle 11G。我一直在尝试使用存储在SQLServer表中的数据更新Oracle表

使用SQL Developer,我完成了以下工作:

  • 已创建到Oracle数据库的连接

    Created Connection name --> e9_crp
    Supplied User name and Pass
    Defined Host Name and SID
    
  • 我还创建了到包含引用数据的SQL Server的连接

    Connection Name --> sql_data
    User Name and Pass
    Host and Port
    
  • SQL Server使用的连接名称是
    SQL\u data

    Oracle使用的连接名称是
    e9\u crp

    SQL Server中的表位于dbo所有者的数据库
    my\u tmp
    中,称为
    tiers
    my\u tmp.dbo.tiers

    在SQLDeveloper中,我可以查看、选择和查看分层表。在
    SQL\u数据连接中,此SQL语句也可以使用工作表:

     select * from [my_tmp].[dbo].[tiers]
    
    e9\u crp
    连接模式中尝试连接到此表时,我一直在尝试这样做:

     select * from [sql_data].[my_tmp].[dbo].[tiers]
    
    但这将返回一个错误,指出分层表不存在:

     ORA-00903: invalid table name
     00903. 00000 -  "invalid table name"
    
    两个表都有一个唯一的ID“item”,因此在完美的世界中,这应该是可行的:

     select a.itm, b.tier
     from [e9_crp].[crpdta].[itemmaster] a inner join [sql_data].[my_tmp].[dbo].[tiers] b
         on(a.itm = b.itm)
    
    这是假设我在表标识符中使用连接名称。但是,这显然不起作用。我需要做的是能够在必要时以类似的方式将这两个数据库连接在一起


    如何使用SQLDeveloper连接这两个表?我尝试了多次表字符串的连接迭代,但没有成功。非常感谢您的帮助。

    Oracle有数据库链接的概念,SQL Server有链接服务器的概念。这两种功能都允许您从两个独立的数据库查询数据

    这里有一个链接,其中包含设置Oracle数据库链接到SQL Server数据库的说明

    这里有一个链接,说明如何将SQL Server链接服务器设置为Oracle DB

    也可以看到这篇文章