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

Hvornår mislykkes en PREPARE QUERY i PRO C?

Jeg har tidligere skrevet en masse pro*c og med tiden indset, at du ikke ønsker at tjekke returkoden for PREPARE-sætningen, da den aldrig returnerer nogen værdi. Her er hvad jeg mener:

PREPARE sqlca.sqlcode-værdien er returkoden for den sætning, der kørte umiddelbart FØR PREPARE-sætningen. Med andre ord, hvis du kontrollerer outputtet af PREPARE-sætningen og sætningen, der blev udført lige før PREPARE-sætningen mislykkedes, så mislykkes returkoden for prepareringen. Hvis det forrige udsagn lykkedes, ser PREPARE ud til at være lykkedes.

Med andre ord er værdien for prepare sqlca.sqlcode dybest set ingenting (den fejler aldrig af sig selv). Så hvis PREPARE nu mislykkes, skal du kontrollere sætningen, der blev udført lige før PREPARE-sætningen, og sikre dig, at du tjekker sqlca.sqlcode-værdien af ​​den. Mit bud er, at den tidligere erklæring mislykkes, og den returnerede fejl vedrører den erklæring. Giver det mening?

-Jim




  1. Sådan håndterer du undtagelser, mens du tilføjer dublet brugernavn til en database i forårets mvc-applikation

  2. Brug af net/ssh/gateway til at etablere ssh-tunnel til mysql

  3. psycopg2 E' på tabel, felt og skema

  4. Programmatisk identificere django udenlandske nøgle-links