07/03/2011, 03:01
|
| | Fecha de Ingreso: marzo-2011
Mensajes: 6
Antigüedad: 13 años, 10 meses Puntos: 0 | |
Respuesta: paso de sistema de monousuario a multiusuario Yo también tengo que hacer lo mismo con una aplicación php+mysql,
para el código php que maneja transacciones y bloqueos usa el manual de MySql, tablas Innodb,
bloqueos:
//SELECT FOR UPDATE, para una tabla que está relacionada con otras tablas con FOREIGN KEY
$sql="SELECT * FROM tabla WHERE .... FOR UPDATE";
mysql_query($sql);
//control de error
//control de si hay filas ...
//SELECT ... LOCK IN SHARE MODE: por ejemplo para bloquear una tabla donde hay un contador
// para una clave primaria, para que no se duplique una clave por acceso simultáneo.
$sql="SELECT * FROM tabla1 WHERE .... LOCK IN SHARE MODE";
mysql_query($sql);
...
También debes considerar al usar cualquier SUBMIT: puede que haya cambiado el contenido por otro usuario => leer antes de guardar, comprobar que una clave primaria ya existe, ...
Mostrar todos los cambios en los formularios.
Al modificar una tabla, si se actualiza en cascada y está permitido el cambio de clave primaria, es crítico, comprobar esa clave antes de modificar el registro y advertir de cambios, incluso recuperar ese registro cambiado ....
Todo esto aún no lo he implementado, pero como quieres cosas teóricas te las dejo ...
suerte, |