Widersprüchliches Oracle-Abfrageergebnis

8

Ich führe zwei Abfragen durch und bekomme seltsame Ergebnisse. Ich würde gerne wissen, warum das passiert.
Jetzt Abfragen:

%Vor%

Ergebnis ist leer.

%Vor%

Ergebnis ist 1.

Es ist wirklich dieselbe Abfrage mit unterschiedlichem Rückgabewert.
Tabelle A enthält Zeile mit 'a' Feld = 123.
Tabelle B enthält keine Zeilen als a.a = b.a.

Wie kann nichts oder 1 für die gleiche Abfrage zurückgegeben werden?


Aktualisierung:

Wenn ich es so mache

%Vor%

Es funktioniert OK.

    
Arcane 16.01.2012, 14:58
quelle

1 Antwort

1

Möglicherweise haben Sie Indizes oder Fremdschlüsseleinschränkungen, die nicht mit den Tabellendaten übereinstimmen. Da diese beiden Abfragen höchstwahrscheinlich unterschiedliche Indizes verwenden, geben sie inkonsistente Daten zurück.

Haben Sie die Constrataints vorübergehend deaktiviert oder eingerichtet, ohne zu bestätigen, dass sie ursprünglich gültig waren ( ENABLE NOVALIDATE )?

Versuchen Sie, die Indizes neu zu erstellen und die Fremdschlüsseleinschränkungen zu löschen und neu zu erstellen, um zu sehen, ob das Ihr Problem behebt.

    
Codo 16.01.2012 15:31
quelle

Tags und Links