| |||
Duda con aplicacion - solo un usuario pueda modificar un registro hola amigos tengo la siguiente situacion: tengo una aplicacion creada con php y postgresql, para acceder a la aplicacion el usuario ingresa clave y contraseña, cada usuario debe de modificar uno o varios registros de una base de datos el problema es que en ocaciones dos o varios usuarios modifican un mismo registro. como puedo hacer para que un registro solo lo pueda modificar un usuario por ejemplo que sea el primero que lo tome. |
| ||||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro Creo que eso lo puedes lograr mediante sessiones, puedes leer mas sobre eso aqui: http://www.php.net/manual/es/session.customhandler.php |
| ||||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro Eso sólo se controla a nivel de Base de Datos. Las sesiones de PHP no tienen impacto en las restricciones de BBDD. Casi todos los motores de BBDD que posean control de transacciones tienen una forma de SELECT que tiene una sintaxis semejante a
Código MySQL:
Ese tipo de acción genera un bloqueo a nivel registro para todos los registros devueltos por la consulta. Si otro user intenta realizar una acción sobre ellos se produce un error de "table locked".Ver original PosgreSQL: http://www.postgresql.org/docs/9.0/s...ql-select.html MySQL: https://dev.mysql.com/doc/refman/5.0...ing-reads.html Informix: http://pic.dhe.ibm.com/infocenter/id...s_sqs_0161.htm
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) Última edición por gnzsoloyo; 07/05/2014 a las 11:32 |
| |||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro gnzsoloyo gracias por responder, tengo una duda en cuanto al tema, la aplicacion que tengo consulta un tabla y dependiendo de una condicion me retorna un grupo de registros pero el unico registro que necesito modificar es el primero, lo implementaria asi,
Código SQL:
Ver original que opinion tienes? |
| |||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro gnzsoloyo pero el primero de esa consulta no el primero de la tabla, pero tiene logica como lo pienso implementar? |
| ||||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro LIMIT aplica al resultado de la CONSULTA, no de la tabla.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro gnzsoloyo efectivamente es con LIMIT, tengo una duda ya como obtengo ese ultimo registro y que es un objeto ,puedo colocar el objeto con la prioridad en el WHERE del UPDATE (utilizando php)
Código SQL:
Ver original |
| ||||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro Sólo te queda una opción: Tres (3) queries. La primera para obtener el dato. La segunda para reservarlo. La tercera para el UPDATE. La otra opción es meter todo en un Stored Procedure...
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro no me funciono asi
Código SQL:
Ver original gnzsoloyo podrias indicarme mediante un ejemplo lo que me dijiste en Cita: Eso sólo se controla a nivel de Base de Datos. Las sesiones de PHP no tienen impacto en las restricciones de BBDD. Casi todos los motores de BBDD que posean control de transacciones tienen una forma de SELECT que tiene una sintaxis semejante a Código MySQL: Ver original SELECT ... FROM ... FOR UPDATE Ese tipo de acción genera un bloqueo a nivel registro para todos los registros devueltos por la consulta. Si otro user intenta realizar una acción sobre ellos se produce un error de "table locked". PosgreSQL: http://www.postgresql.org/docs/9.0/s...ql-select.html MySQL: https://dev.mysql.com/doc/refman/5.0...ing-reads.html Informix: http://pic.dhe.ibm.com/infocenter/id...s_sqs_0161.htm |
| ||||
Respuesta: Duda con aplicacion - solo un usuario pueda modificar un registro En mi opinión, esto debería controlarse solo desde PHP, con un campo adicional en la tabla que quieres modificar. Algo como: Desde php
Código PHP:
Ver original Perdón por el PHP, simplemente es la logica que yo haría.
__________________ Without data, You are another person with an opinion. W. Edwads Deming |
Etiquetas: |