Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/10/2010, 03:22
bavarol
 
Fecha de Ingreso: octubre-2010
Ubicación: Baja Baviera, Alemania
Mensajes: 13
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: Clave Primaria Proxima

Cita:
Iniciado por Andres95 Ver Mensaje
en un sistema multiusuario ese procedimiento no te serviria, porque podrian ganarte el id, es decir, que alguien guarde ese id antes de que tu.

Lo que puedes hacer es obtener el id generado por el identity y regresarlo a la aplicacion en caso de que lo requiera para alguna otra cosa, como guardar registros que dependan de ese id...

algunas funciones para obtener el identity son:

SCOPE_IDENTITY

@@IDENTITY


checalas bien en la ayuda de sql server para ver cual es la que mas te conviene...

Saludos!
Andres, tienes razon esas funciones son realmente utiles pero dependientes de la sesion en la que se trabaje, por ejemplo, si se hace un insert en la sesion n°1 cortas la sesion y en la sesion n°2 y haces una consulta mediante esas funciones se obtiene null, creo que lo mejor y mas seguro para nuestro amigo es identity_current.
Esta es la unica funcion de las que hemos comentado que realmente devuelve siempre lo que queremos sin tener que preocuparnos de nada mas.

identity_current('nombre_de_tabla')