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 server 2005 Openquery的工作速度比直接查询链接表要快得多_Sql Server 2005_Oracle_Linked Server - Fatal编程技术网

Sql server 2005 Openquery的工作速度比直接查询链接表要快得多

Sql server 2005 Openquery的工作速度比直接查询链接表要快得多,sql-server-2005,oracle,linked-server,Sql Server 2005,Oracle,Linked Server,试图找出为什么两者之间存在如此显著的差异 select*from linkedserver..tablename 及 从openquery中选择*(linkedserver,从tablename中选择*) 4分钟对13秒。Openquery直接连接到目标服务器。尽管提到了RDBMS,但您没有提到与数据通信的其他方式。您知道它是否试图通过链接服务器登记分布式事务吗?如果您在调用时观察Oracle的跟踪输出,您应该能够看到请求发生的差异。IIRC,标准链接查询将以与OPENQUERY调用不同的方式从

试图找出为什么两者之间存在如此显著的差异

select*from linkedserver..tablename

从openquery中选择*(linkedserver,从tablename中选择*)


4分钟对13秒。

Openquery直接连接到目标服务器。尽管提到了RDBMS,但您没有提到与数据通信的其他方式。

您知道它是否试图通过链接服务器登记分布式事务吗?如果您在调用时观察Oracle的跟踪输出,您应该能够看到请求发生的差异。IIRC,标准链接查询将以与OPENQUERY调用不同的方式从oracle元数据请求模式信息。我不知道发生这种情况的确切原因,但我在过去遇到过一个类似的问题,它是通过使用OPENQUERY解决的。

OPENQUERY连接到目标服务器,在该服务器上运行查询并返回结果集。然而,我相信链接服务器查询是在本地服务器上执行的,并在连接上运行


希望这能有所帮助。

是否一直如此不同?什么样的链接服务器-SQL、ODBC?我看到StackOverflow没有太大变化。。。没有解释原因的否决票。胡说八道,还有别的办法吗?。。。我提出了两个完整的问题。这就是我所经营的。