我最近刚刚从 SQL2005 32 位 --> 64 位移动了一个 SQL 数据库。我在使用 OraOLEDB.Oracle 提供程序连接到 Oracle 时遇到问题。
我能够安装 Oracle 10G 客户端,ODAC 64 位。我还能够将链接服务器添加到 Oracle 实例。我可以直接使用链接服务器名称运行查询:
SELECT top 10 *
FROM [DB0PBB0]..[DB0PBB0].[DM_CLICK]
到目前为止它很好,但是,当我尝试使用 OPENQUERY 时会出现问题。我尝试了以下方法:
select * from
OPENQUERY(DB0PBB0,'select * from DB0PBB0.DM_CLICK where Date_stamp <''24-Jul-09'' and Date_stamp >= ''23-Jul-09'' ')
SET FMTONLY OFF
select * from
OPENQUERY(DB0PBB0,'select * from DB0PBB0.DM_CLICK where Date_stamp <''24-Jul-09'' and Date_stamp >= ''23-Jul-09'' ')
我只得到列名,没有行:(
如果我运行这个脚本:
SET FMTONLY OFF
select * from
OPENQUERY(DB0PBB0,'select ''hello'' from dual ')
我明白了
你好
我的问题是,有没有人尝试从 SQL05 64bit 对 Oracle 运行 OPENQUERY ?有什么想法吗?为什么我只会返回列而不是数据?我在具有相同链接的另一台服务器上尝试了相同的查询并且它有效,它返回了行。