Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/03/2015, 11:57
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Derby - ¿Cual es el siguiente valor de un campo auto incremental?

Por temas de concurrencia, no puedes saber el valor de un autoincremental antes de realizar el INSERT. Es la inserción la que genera el valor, antes de eso no existe.
Podrías consultar el máximo valor de ese campo en la tabla y sumarle uno, pero si justo antes de ingresar tu registro, otro usuario realizar aun INERT, el valor que habías obtenido le pertenecerá en realidad al registro anterior, y no al tuyo.

¿Se entiende?
Es un problema normal en sistemas concurrentes, y por eso las funciones de los lenguajes obtienen el numero que se generó, y no el que se podría genrear.

Solo sirve consultar el próximo numero si existe un bloqueo de escritura en las tablas, o bien si el sistema es monousuario.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)