なぜこのような大きな違いがあるのか を理解しようとしています
select * from linkedserver..tablename
と
select * from openquery(linkedserver, select * from tablename)
.
4分対13秒。
なぜこのような大きな違いがあるのか を理解しようとしています
select * from linkedserver..tablename
と
select * from openquery(linkedserver, select * from tablename)
.
4分対13秒。
OPENQUERY は宛先サーバーに接続し、そのサーバーでクエリを実行して結果セットを返します。一方、リンク サーバー クエリはローカル サーバー上で実行され、接続を介して実行されると思います。
お役に立てれば。
リンク サーバーを介して分散トランザクションを登録しようとしているかどうかを知っていますか? 呼び出しが行われたときに Oracle からのトレース出力を見ると、発生している要求の違いを確認できるはずです。IIRC では、標準のリンク クエリは、OPENQUERY 呼び出しとは異なる方法で、Oracle メタデータからスキーマ情報を要求します。なぜこれが起こるのか正確にはわかりませんが、過去に同様の問題があり、OPENQUERY を使用して解決しました。
Openquery は宛先サーバーに直接接続します。あなたは RDBMS と言いましたが、データと通信する他の方法については言及していませんでした。