MySQL - Accesos Multiples

   
Vista:

Accesos Multiples

Publicado por Katxo (1 intervención) el 08/01/2015 10:55:18
Hola,
Estoy haciendo una aplicación en la que en la sociedad en la estoy tengamos posibilidad de reservar mesas vía web o móvil.
La duda que tengo es que cuando un socio entra en la aplicación puede reservar las mesas,
pero el problema que tengo es que si lo hacen dos socios simultáneamente uno puede pisar las mesas del otro.
¿Qué es aconsejable? Bloquear la bd mientras este en uso o …..
¿ Alguna sugerencia por favor?
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Accesos Multiples

Publicado por xve (898 intervenciones) el 08/01/2015 14:58:14
Hola Katxo, la manera que yo haría, es que justo antes de la instrucción de grabar, revisaría que no estuviera ya reservado. Si no esta se guarda, si esta reservado, se devuelve el error informado.

No bloquearía nunca la base de datos...

Esto es como las agencias de viaje... nunca se bloquea la base de datos... el ultimo que reserva se queda sin...

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Accesos Multiples

Publicado por Correcta la respuesta anterior adrianaaae@hotmail.com (1 intervención) el 08/01/2015 16:09:10
La respuesta anterior es muy válida.

Solo una sugerencia, que al crear la base de datos en cualquier servidor de base de datos que quieras.
debería de ponerle una llave primaria, es lo más aconsejable, y como dice el comentario anterior, lo que
puedes hacer es poner una columna que sea por ejemplo reservado (si es mysql tyint; tipo boolean) y si
se ocupa se pone un (1) por ejemplo y si está desocupado se pone por default cero (0) y pues es una forma
de hacerlo, al consultar solo consultas la mesa si el id de la mesa tiene el estado (o sea columna) 1 es que esta
ocupado, mandas un mensaje de error y sino pues se ocupa y se pone el estado a 1.


Espero te sirva, saludos!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar