Ver Mensaje Individual
  #12 (permalink)  
Antiguo 12/02/2010, 14:40
Teosanchez
 
Fecha de Ingreso: enero-2010
Ubicación: Sevilla
Mensajes: 202
Antigüedad: 14 años, 3 meses
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