2016-09-28 104 views
2

我使用SQL Server 2014.我已经通过ODBC将链接服务器设置为旧数据库系统。当我运行这个查询:SQL Server链接服务器查询返回空行

select * 
from openquery([MyLink], 'select Ref, FxRate from <table> where Ref=155003') 

我得到的结果与正确数量的记录和列。

但值都默认:

Ref FxRate 
    0  0 

在表中有这个实际数字。我能够从另一台服务器为同一个数据库做链接服务器。我试图尽我所能复制。有关如何解决此问题的任何想法?

+0

您是否尝试过'SELECT Ref,FxRate FROM LinkedServer.DataBase.schema.table WHERE Ref = 155003'? – gofr1

+0

是的,但结果相同。 – user2966852

+0

因此,无论您使用OPENQUERY,linked_server.database.schema.table,您在输出中都会得到相同的零?你能直接在这台服务器上运行这个查询吗? – gofr1

回答

2

我在这里发布这个答案给其他人。 ODBC驱动程序与新机器的操作系统不兼容。在验证在旧数据库上执行了正确的查询之后,我得出了这个结论,但只有结果没有正确显示(它们全部被删除)。然后我排除了任何编码问题。最后升级了固定它的ODBC驱动程序。