Ho il seguente caso in PL/SQLPerché ottengo ORA-06592: CASE non trovato durante l'esecuzione dell'istruzione CASE in PL/SQL?
CASE
WHEN v_line_item.custom_segment = 'CND1' THEN
v_current_col := v_col_lcy_tps;
WHEN v_line_item.custom_segment = 'CND2' THEN
v_current_col := v_col_lcy_ib;
WHEN v_line_item.custom_segment = 'CND3' THEN
v_current_col := v_col_lcy_gm;
WHEN v_line_item.custom_segment = 'CND4' THEN
v_current_col := v_col_lcy_pb;
WHEN v_line_item.custom_segment = 'CND5' THEN
v_current_col := v_col_lcy_bb;
END CASE;
Il codice compila bene, ma quando eseguo al proc memorizzato ricevo il seguente errore:
ORA-06592: CASE not found while executing CASE statement
Così, quando ho rimuovere il caso; il proc memorizzato non verrà compilato. Gli unici esempi su cui posso mettere le mani, usa il CASE in un'istruzione select, non voglio usarlo nell'istruzione select, voglio impostare la mia variabile senza avere un gruppo di istruzioni IF THEN ELSE.
LOL, non è possibile contrassegnare la risposta corretta entro 12 minuti, roba divertente. Comunque sì, aggiungo le condizioni di caduta e tutto funziona alla grande. – Marthinus
@Marthinus Prenditi il tuo tempo :) felice di aiutare :) – Sathya