【发布时间】:2014-07-17 23:57:40
【问题描述】:
我已经成功地将一个 Oracle 11g 数据库链接到 SQL Server 2008。我可以在 SQL Server 中运行一个显示 Oracle 数据的简单查询:
SELECT PRODUCT_CODE
FROM [ORACLE-LINK]..ORACLE_SCHEMA.PRODUCTS_TABLE
这完全符合我的预期。
当我尝试做一个简单的连接时,问题就来了:
SELECT ProductName, [ORACLE-LINK]..ORACLE_SCHEMA.PRODUCTS_TABLE.PRODUCT_NAME
FROM SqlServer_table
INNER JOIN [ORACLE-LINK]..ORACLE_SCHEMA.PRODUCTS_TABLE
ON SqlServer_table.Product_ID=[ORACLE-LINK]..ORACLE_SCHEMA.PRODUCTS_TABLE.PRODUCT_CODE
这会导致 JOIN 语句的 Oracle 部分出现“无法绑定多部分标识符”错误。我从研究中知道语法必须准确,而且我想我已经尝试了几乎所有的排列。也许 SQL Server 设置/注册表中有一些东西...
【问题讨论】:
-
理论上应该不会影响它,但是您是否尝试过在查询中对 Oracle 表进行别名处理?您是否尝试过在 SQL 服务器端为 Oracle 表创建同义词?引用 Oracle 表的视图?
标签: sql sql-server sql-server-2008 join oracle11g