El tema de excepciones no suele ser del gusto de lor programadores dada la cantidad de condiciones a las que se someten sus aplicaciones durante su ejecución. Al momento de tratar un condición, podemos tratarla según dos enfoques:

  • Enfoque conservador: consiste en comprobar primero y luego actuar.
  • Enfoque optimista: consiste en probar primero y analizar despues.

Tomando en enfoque optimista, analizaremos el caso de un stored procedure en MySQL que ejecute una INSERT, y si el mismo dio error (por ejemplo por PK duplicada) realice un UPDATE. Como se observa, cumple con el enfoque:

  1. Intentamos ejecutar el INSERT
  2. Luego analizamos sus consecuencias y tomamos medidas correctivas

Para hacer esto veremos un poco de handlers en MySQL.
(más…)