Dies ist das erste Mal, dass ich mit Oracle zu tun habe, und es fällt mir schwer zu verstehen, warum ich diesen Fehler erhalte.Oracle "ORA-01008: nicht alle Variablen gebunden" Fehler mit Parametern
Ich verwende Oracle ODT.NET w/C# mit dem folgenden Code in einer Abfrage where-Klausel:
WHERE table.Variable1 = :VarA
AND (:VarB IS NULL OR table.Variable2 LIKE '%' || :VarB || '%')
AND (:VarC IS NULL OR table.Variable3 LIKE :VarC || '%')
und ich hinzufüge, die Parameterwerte wie folgt:
cmd.Parameters.Add("VarA", "24");
cmd.Parameters.Add("VarB", "test");
cmd.Parameters.Add("VarC", "1234");
Wenn ich diese Abfrage ausführen, liefert der Server:
ORA-01008: not all variables bound
Wenn ich einen der Kommentar aus ‚AND (....‘ Zeilen, die Abfrage comp Leitet erfolgreich.
Warum sollte die Abfrage in Ordnung sein, wenn ich nur mit zwei Parametern abfrage, aber nicht mit drei? Der Fehler Ich erhalte auch keinen Sinn
sind aus der SQL-Anweisung drucken Sie in der Lage DBMS_OUTPUT zu verwenden, bevor es ausgeführt wird? –