return id en sp

04/05/2004 - 21:59 por Javi | Informe spam
hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?

graicas

Preguntas similare

Leer las respuestas

#1 jboca
04/05/2004 - 22:31 | Informe spam
Hola, no entiendo muy bien tu pregunta ya que podria ser un Unique o un
Identity, ahora, si es un Identity podrias hacer.

Exec SP
y dentro del Sp podrias colocar la funcion

Select @@Identity

El te devuelve el ultimo identity colocado.

John Jairo Bocachica
Colombia

Javi wrote:

hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?

graicas
Respuesta Responder a este mensaje
#2 CEO
04/05/2004 - 22:54 | Informe spam
Se me ocurre que después de realizar el INSERT podrías
ejecutar la sentencia :

Select Max(id) as ID From Tabla1

Espero te ayude


hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?

graicas
.

Respuesta Responder a este mensaje
#3 Javi
04/05/2004 - 23:21 | Informe spam
lo que necesito es lo siguiente:
si tengo

id Nombre
1 Pepe
2 Pepa

y agrego un registro mediante un sp llamado "insert"
usando exec insert('juancito')

me retorne el id que le corresponde a juancito (3 en este
caso)

lo necesito porque es para una app.net, y tengo un objeto
Persona, este tiene el método insert que llama al sp, y
sobre el mismo objeto después voy a trabjar otros campos,
y quiero llamar a otros métodos como update por ej, y
para esto necesito del id del tipo que ingresé en ese
momento.. bue.. no se si se entendió, sino no
importa... :) la idea es obtener el id (si, es unique)
del registro que inserté con el sp

gracias

Hola, no entiendo muy bien tu pregunta ya que podria ser


un Unique o un
Identity, ahora, si es un Identity podrias hacer.

Exec SP
y dentro del Sp podrias colocar la funcion

Select @@Identity

El te devuelve el ultimo identity colocado.

John Jairo Bocachica
Colombia

Javi wrote:

hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?



graicas




.

Respuesta Responder a este mensaje
#4 Maxi
05/05/2004 - 00:15 | Informe spam
Hola, te entiendo perfectamente, ahora veamos:

si para esta tarea usas identys te aconsejo que leas este articulo
http://www.configuracionesintegrale...p?articulo!9

Bien, luego como sabras los Stores pueden retornar parametros de salida
veamos un ejemplos:


create table #pepe1 (id int identity, nombre varchar(50))

GO

CREATE PROC #FS_SP_PEPE1 @NOMBRE VARCHAR(50), @NUEVO_ID INT OUTPUT AS
INSERT INTO #PEPE1 (NOMBRE) VALUES (@NOMBRE)
SELECT @NUEVO_ID = SCOPE_IDENTITY()

GO

DECLARE @ULTIMO INT

EXEC #FS_SP_PEPE1 'MAXI',@ULTIMO OUTPUT
SELECT @ULTIMO

=
Nota: este ejemplo esta realizado con identity porque por lo que veo es lo
que estas haciendo o intentando hacer, pero YO NO recomiendo el uso de los
Identity de esta forma, para mi un campo identity no lo debe conocer el
usuario y si quiero un autonumerico podes tener una tabla donde pongas el
proximo valor a generar y con bloqueos sanos poder llevar adelante dicha
operacion.

Suerte


Salu2

Maxi

Desarrollador 3 estrellas .NET
Buenos Aires - Argentina

MSN:

"Javi" escribió en el mensaje
news:830e01c4321d$c8f9a1e0$
lo que necesito es lo siguiente:
si tengo

id Nombre
1 Pepe
2 Pepa

y agrego un registro mediante un sp llamado "insert"
usando exec insert('juancito')

me retorne el id que le corresponde a juancito (3 en este
caso)

lo necesito porque es para una app.net, y tengo un objeto
Persona, este tiene el método insert que llama al sp, y
sobre el mismo objeto después voy a trabjar otros campos,
y quiero llamar a otros métodos como update por ej, y
para esto necesito del id del tipo que ingresé en ese
momento.. bue.. no se si se entendió, sino no
importa... :) la idea es obtener el id (si, es unique)
del registro que inserté con el sp

gracias

Hola, no entiendo muy bien tu pregunta ya que podria ser


un Unique o un
Identity, ahora, si es un Identity podrias hacer.

Exec SP
y dentro del Sp podrias colocar la funcion

Select @@Identity

El te devuelve el ultimo identity colocado.

John Jairo Bocachica
Colombia

Javi wrote:

hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?



graicas




.

Respuesta Responder a este mensaje
#5 Javi
05/05/2004 - 01:49 | Informe spam
Gracias Fenomeno!!

Maxi para MVP!!

Se me ocurre que después de realizar el INSERT podrías
ejecutar la sentencia :

Select Max(id) as ID From Tabla1

Espero te ayude


hola, tengo un store procedure que hace un insert, me
gustaría que al hacer el insert retorne el id que
adquiere la fila, cómo es posible?

graicas
.



.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida