OPENQUERY 无行返回 无数据返回 数据缺失

用SQL Server 2008 R2 的 Oracle Provider for OLE DB 链接Oracle 。

在SQL Server中使用下面查询语句,没有数据返回

但是再PL/SQL中查找确实是有数据的。

SELECT * FROM OPENQUERY(ORA_LINK,'SELECT * FROM USERNAME.TABLE');

后来GOOGLE查了一下,找到问题所在:问题原因与答案

发现Oracle中视图使用的了下面这句

b.CREATEDT LIKE SYSDATE

尝试把这句修改成

to_char(b.CREATEDT,'yyyy-MM-dd') = to_char(SYSDATE,'yyyy-MM-dd')

问题引刃而解。

暂时还未清楚原因,

可能是Oracle 与 Sql Server上的差异造成的,如果要用到数据库链接的话就只能迁就一下了

转载请注明出处, by lazyneal 2016

原文地址:https://www.cnblogs.com/lazyneal/p/6217290.html