0

次のクエリがあります。

select *
from gps_servicio ser
where ser.id in (select idserv from gps_agentes where idagen = 8073061);

このクエリは、テーブル gps_agentes のフィールド idserv (asc one) にインデックスを作成するまでは完全に機能します。これを行うと、クエリが壊れて結果が得られません。これはバグですか?gps_servicio.id と gps_agentes.idserv は両方とも数値 (10,0) フィールドであり、gps_agentes.idserv には gps_servicio.id を指す FK があります。

お時間いただきありがとうございます。

4

1 に答える 1

2

インデックスを作成するときにクエリの結果が変わる場合、それはバグを示しています。バグが発生した場合は、Oracle サポートに報告して、発生したバグが既存のパッチによってすでに修正されているかどうか、またはこれまで誰も遭遇したことのない新しいバグであるかどうかを判断する必要があります。

ただし、あなたが 9i を使用しているということを考えると、データベースのバージョンは少なくとも 5 つのメジャー リリースより前であり、何年にもわたってプライマリ サポートが終了しています。オラクルのサポートに。少なくとも、使用している Oracle のバージョンに関係なく、最新のパッチセットを実行していますか (「9i」は、9.0.1 と 9.2 の 2 つのメジャー リリースをカバーしています)。

于 2013-10-28T13:33:30.100 に答える