| |||
Evitar que el número se repita en un rango (sistema multiusuario) Buenas noches, escribo en esta oportunidad porque estoy desarrollando un sistema que genera número de ticket pero tiene que ser multiusuario, porque va trabajar con 2 máquinas y en cada máquina se puede tomar el número, entonces mi duda es: como hago para que el usuario no me tome el mismo número que otro usuario, trabaje con campo auto numérico pero como debo de seguir con una secuencia de un rango, lo que hago es generar el auto numérico y luego continuo con la continuidad del rango pero como hago para que otro usuario, al mismo tiempo no me tome el mismo número del rango? Como podría hacer allí? |
| |||
Respuesta: Evitar que el número se repita en un rango (sistema multiusuario) Gracias por responderme alvaro_trewhela, pensé que se tenia que bloquear la tabla para que se genere y asi evitar que se repitiera |
| |||
Respuesta: Evitar que el número se repita en un rango (sistema multiusuario) Suponiendo que usas mysql, porque no lo expones, se es así, disculpa no lo abordé correctamente, más bien dí la solución incompleta, claro si quieres que sea estrictamente unica debes darle a la columna la restricción unique así aseguras mediante el motor que no se repetirá, ahora para el caso de las dos maquinas, supongo que haría dos columnas, una para c/maquina, mediante un id, de cada puede ser? Saludos |
| |||
Respuesta: Evitar que el número se repita en un rango (sistema multiusuario) No creo sea necesario una columna para cada máquina, y si en el futuro te agregan 100 computadoras más ??, pondrás 100 columnas más a tu tabla. La solución va por establecerle un índice de unicidad a la columna del número de ticket y hacer uso de transacciones, es decir encerrar en una transacción la operación de inserción de datos, de esta manera garantizas un nivel de aislamiento adecuado. |
Etiquetas: |