Oracle
 sql >> Database >  >> RDS >> Oracle

Quando una PREPARE QUERY ha esito negativo in PRO C?

Ho scritto MOLTO pro*c in passato e nel tempo mi sono reso conto che non si desidera controllare il codice di ritorno dell'istruzione PREPARE poiché non restituisce mai alcun valore. Ecco cosa intendo:

Il valore PREPARE sqlca.sqlcode è il codice di ritorno dell'istruzione eseguita immediatamente PRIMA dell'istruzione PREPARE. In altre parole, se si controlla l'output dell'istruzione PREPARE e l'istruzione eseguita subito prima dell'istruzione PREPARE ha esito negativo, il codice di ritorno della preparazione non è riuscito. Se l'istruzione precedente ha avuto successo, allora PREPARE sembra aver avuto successo.

In altre parole, il valore prepare sqlca.sqlcode non è praticamente nulla (non fallisce mai da solo). Quindi, se PREPARE ora non riesce, controlla l'istruzione eseguita subito prima dell'istruzione PREPARE e assicurati di controllare il valore sqlca.sqlcode di quella. La mia scommessa è che l'affermazione precedente non è riuscita e l'errore restituito si riferisce a tale affermazione. Ha senso?

-Jim