SQL - COMO SE EL VALOR ASIGNADO AL ID EN UN INSERT?

 
Vista:
sin imagen de perfil

COMO SE EL VALOR ASIGNADO AL ID EN UN INSERT?

Publicado por DALSOM (195 intervenciones) el 11/12/2003 18:15:42
HOLA A TODOS, Y GRACIAS POR TOMARSE TIEMPO CONMIGO.

TENGO UN CAMPO IDENTITY, QUE ES MI PRIMARY KEY, Y CUANDO INSERTO UN NUEVO REGISTRO A LA TABLA, QUIERO SABER CUAL VALOR HA TOMADO ESE CAMPO, PARA ESE NUEVO REGISTRO.

NO PUEDO HACER UN SELECT POR EL VALOR DE TODOS LOS CAMPOS INSERTADOS, PORQUE PUEDE QUE ESTE COPIANDO UN REGISTRO A OTRO, Y EL CAMPO IDENTITY SERIA EL UNICO CAMPO DIFERENTE ENTRE LOS DOS REGISTROS. TAMBIEN LA TABLA, PUEDE SER MODIFICADA POR VARIOS USUARIOS A LA VEZ.

ENTONCES, COMO OBTENGO EL VALOR DE ESE CAMPO ID AL MOMENTO DE INSERTAR ?

GRACIAS.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:COMO SE EL VALOR ASIGNADO AL ID EN UN INSERT?

Publicado por Isaías Islas (5072 intervenciones) el 11/12/2003 19:36:57
CREATE TABLE MyTabla (ID int identity, Nombre varchar(30))
INSERT INTO MyTabla VALUES('MARTIN LUTHER KING')
SELECT 'VALOR DEL IDENTIFICADOR', @@IDENTITY
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:COMO SE EL VALOR ASIGNADO AL ID EN UN INSERT?

Publicado por DALSOM (195 intervenciones) el 11/12/2003 20:35:54
GRACIAS.

ES ALGO INEXACTO EN UN AMBIENTE MULTIUSUARIO.

ME EXPLICO : MIENTRAS MAYOR NUMERO DE USUARIO TIENES HACIENDO EL MISMO PROCESO, MAS RAPIDO CAMBIA EL IDENTITY, Y LA FUNCION @@IDENTITY, O IDENT_CURRENT, PODRIA ARROJAR UN VALOR QUE NO ES EL QUE SE ASIGNO EN EL INSERT, YA QUE SOLO TOMAN EL ULTIMO VALOR IDENTIDAD ASIGNADO.

PODRIA HACER ESTO ,

BLOQUEAR EL ULTIMO REGISTRO, HASTA QUE SE INTRODUZCA EL VALOR, Y LUEGO DESBLOQUEAR ESE REGISTRO EN ESPECIFICO, PARA QUE LOS DEMAS PUEDAN TOMAR EL ULTIMO VALOR, SIN QUE TENGA QUE PERDER LA SECUENCIA.

ESPERO NO SER MOLESTIA CON TODO ESTO, PERO AUN SOY MUY NOVATO EN SQL
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COMO SE EL VALOR ASIGNADO AL ID EN UN INSERT?

Publicado por Isaías Islas (5072 intervenciones) el 12/12/2003 05:42:08
Es TOTALMENTE INEXACTO lo que uste comenta, el @@IDENTITY es una variable que se actualiza POR CONEXION, entonces si 20, 000 usuarios hicieran un insert en le mismo NONOSEGUNDO (Que lo veo IMPOSIBLE), cada uno de ellos, segun la conexion, tendria un valor DIFERENTE.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar