Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/05/2013, 19:25
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Dudas creación de procedimiento

Cita:
Lo he probado pero sigue realizando todas las operaciones por separado en vez de esperar digamos a confirmar que todas son correctas y ejecutarlas todas a la vez.
Es que eso no existe en una base de datos...
No puedes ejecutarlas todas a la vez, precisamente por si existen dependencias funcionales entre ellas. MySQL no puede adivinarlo, eso lo sabes únicamente tu. Por eso el modelo de proceso no soporta ese nivel de concurrencia.
De todos modos si el problema que que o se cumplan todas o no se cumpla ninguna, la cosa ya fue resuelta hace años: Para eso existen las transacciones... La creación de operaciones atómicas permite precisamente establecer que una o más acciones se realicen o se deshagan.
Claro que tiene como restricción que las tablas usadas, en el caso de MySQL, deben ser sí o sí InnoDB, y no pueden ser MyISAM.

Concurrencia en MySQL

Una aclaración, para despejar un detalle: El hecho de que en un SP uses BEGIN/END no implica que estés usando transacciones, si la transacción no fue declarada. Por default, las sentencias DML en MySQL son de ejecución inmediata, estén o no dentro de un SP. Pero si dentro de un SP se crea y confirma una transacción, la cosa es diferente.

Lee del tema, y luego veremos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)