Cita: Como ven el proceso esta bien, pero creo que no es lo mejor ya que puede que dos usuarios corran ese mismo proceso casi al mimso tiempo y se pieda la integridad de mi base de datos.
Para eso se inventaron las transacciones.
15.10. Bloqueo y modelo de transacciones de InnoDB
Leelo, trata de comprenderlo y luego pregunta tus dudas. Es muy largo para explicarlo en un sólo post.
Préstale especial atención al tema "Bloqueo de la próxima clave (Next-Key Locking): evitar el problema fantasma"