12/02/2010, 14:40
|
| | Fecha de Ingreso: enero-2010 Ubicación: Sevilla
Mensajes: 202
Antigüedad: 15 años Puntos: 5 | |
Respuesta: sumar 1 a registro sql Hola a todos
Esta solución que habéis propuesto funciona bien siempre que haya UN SOLO USUARIO, porque si hay más de uno concurrente puede ocurrir que le devuelva el mismo número a varios de ellos, ya que por lo que parece, calculas el número antes de guardar la factura.
Una solución mejor es utilizar una tabla para obtener los números de secuencia y mediante un trigger o un procedimiento almacenado obtener el número cuando estés guardando la factura.
La tabla de secuencias es muy simple:
Secuencias(Id, entidad, numero_secuencia)
Cuando vayas a insertar, recuperas el número para la entidad correspondiente (en tu caso factura), luego haces un UPDATE de Secuencias y pones numero_secuencia= numero_secuencia+1 para dejarla preparada para la siguiente inserción.
Te recomiendo, por último que utilices transacciones para asegurar que el resultado es correcto.
saludos |