sql >> Database teknologi >  >> RDS >> Mysql

Hvad er fordelen ved at bruge prøv {} catch {} versus hvis {} andet {}

Jeg ville bruge try/catch-blokken, når den normale sti gennem koden skulle fortsætte uden fejl, medmindre der virkelig er nogle usædvanlige forhold - som at serveren er nede, dine legitimationsoplysninger er udløbet eller forkerte. Jeg ville ikke nødvendigvis bruge det til at håndtere ikke-ekstraordinære fejl -- sige som om den nuværende bruger ikke har den rigtige rolle. Det vil sige, at når du med rimelighed kan forvente og håndtere en fejl, der ikke er en usædvanlig tilstand, synes jeg, du skal foretage dine kontroller.

I det tilfælde, som du har beskrevet -- opsætning og udførelse af en forespørgsel, er en try/catch-blok en glimrende måde at håndtere det på, som du normalt forventer, at forespørgslen lykkes. På den anden side vil du sikkert gerne kontrollere, at indholdet af resultatet er, hvad du forventer med kontrolflowlogik i stedet for blot at forsøge at bruge data, der måske ikke er gyldige til dit formål.

En ting, du gerne vil være opmærksom på, er sjusket brug af try/catch. Prøv/fangst bør ikke bruges til at beskytte dig selv mod dårlig programmering -- "Jeg ved ikke, hvad der vil ske, hvis jeg gør dette, så jeg vil pakke det ind i et forsøg/fang og håber på det bedste" af programmering. Typisk vil du gerne begrænse den slags undtagelser, du fanger, til dem, der ikke er relateret til selve koden (server nede, dårlige legitimationsoplysninger osv.), så du kan finde og rette fejl, der er koderelaterede (null pointers osv.). .).



  1. Hvordan går man gennem en række input i en form?

  2. Django Migrations:A Primer

  3. Sådan opdateres tabellen i oracle

  4. Ændre på Big Table i RDS Løsning til tabel fuld fejl