Kompilierungsfehler in Proc (eingebettete SQL in C) kompilieren.
-
22-09-2019 - |
Frage
Bitte sagen Sie mir, was mit der Frage los ist. Ich benutze Pro C.
EXEC SQL SELECT 1
INTO :db_count
FROM sachin t
WHERE t.serialno = :serial_no
AND t.amount = (:db_inamount - (SELECT NVL(overrun_amount,0)
FROM sunny tovrun
WHERE tovrun.serialno = :serial_no
AND tovrun.timestamp = t.timestamp
AND rownum < 2)
)
AND t.request_code = 11
AND t.reason_code = 0
AND t.reversed = 0
AND rownum < 2;
Und die Kompilierungsfehler erhalten
Syntax error at line 4487, column 42, file my_file.pc:
Error at line 4487, column 42 in file my_file.pc AND t.amount = (:db_inamount - (SELECT NVL(overrun_amount,0)
Lösung
Verwenden:
AND t.amount = (SELECT :db_amount - NVL(overrun_amount, 0) ...
Es handelt sich um eine standardmäßige berechnete Spalte, in der der Wert vor dem Vergleich mit dem berechnet wird t.amount
Wert für Gleichheit.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow