Recuperar identity de un osql

04/10/2006 - 18:00 por Prado | Informe spam
Hola,

estoy ejecutando un insert en una tabla con un comando osql, cuando
intento recuperar el identity generado por el insert siempre recibo
NULL, tanto si asigno a la variable el valor de @@identity como si le
asigno SCOPE_IDENTITY().

¿Alguien sabe si se puede recuperar?¿Como?

Gracias por anticipado,

Prado

Preguntas similare

Leer las respuestas

#1 Maxi
04/10/2006 - 19:29 | Informe spam
Hopl, podrias mostrar como lo estas haciendo?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Prado" escribió en el mensaje
news:
Hola,

estoy ejecutando un insert en una tabla con un comando osql, cuando
intento recuperar el identity generado por el insert siempre recibo
NULL, tanto si asigno a la variable el valor de @@identity como si le
asigno SCOPE_IDENTITY().

¿Alguien sabe si se puede recuperar?¿Como?

Gracias por anticipado,

Prado
Respuesta Responder a este mensaje
#2 Prado
05/10/2006 - 08:43 | Informe spam
Dentro de un procedimiento almacenado, las instrucciones son las
siguientes:

declare @ID_Integrity int
declare @osql2 VARCHAR(512)
set @osql2='osql /E /S [nombreservidor] /d [nombreBD] /Q "insert
IntegrityChecks (Servername,Databasename,Repairneeded,Repairdone,
CheckDate)
values ('''+@@ServerName +''','''+ @target + ''', 0 , 0, getdate() )"'

set @ID_Integrity = @@identity

Necesito recuperar el identity que genera esta inserción para despues
poder actualizar el registro que inserto. Es un procedimiento que puede
tener varias ejecuciones a la vez.

Gracias,

Prado

Maxi ha escrito:

Hopl, podrias mostrar como lo estas haciendo?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Prado" escribió en el mensaje
news:
Hola,

estoy ejecutando un insert en una tabla con un comando osql, cuando
intento recuperar el identity generado por el insert siempre recibo
NULL, tanto si asigno a la variable el valor de @@identity como si le
asigno SCOPE_IDENTITY().

¿Alguien sabe si se puede recuperar?¿Como?

Gracias por anticipado,

Prado
Respuesta Responder a este mensaje
#3 Maxi
05/10/2006 - 13:57 | Informe spam
De donde estas ejecutando esto? porque aca estas teniendo el problema


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Prado" escribió en el mensaje
news:
Dentro de un procedimiento almacenado, las instrucciones son las
siguientes:

declare @ID_Integrity int
declare @osql2 VARCHAR(512)
set @osql2='osql /E /S [nombreservidor] /d [nombreBD] /Q "insert
IntegrityChecks (Servername,Databasename,Repairneeded,Repairdone,
CheckDate)
values ('''+@@ServerName +''','''+ @target + ''', 0 , 0, getdate() )"'

set @ID_Integrity = @@identity

Necesito recuperar el identity que genera esta inserción para despues
poder actualizar el registro que inserto. Es un procedimiento que puede
tener varias ejecuciones a la vez.

Gracias,

Prado

Maxi ha escrito:

Hopl, podrias mostrar como lo estas haciendo?


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Prado" escribió en el mensaje
news:
Hola,

estoy ejecutando un insert en una tabla con un comando osql, cuando
intento recuperar el identity generado por el insert siempre recibo
NULL, tanto si asigno a la variable el valor de @@identity como si le
asigno SCOPE_IDENTITY().

¿Alguien sabe si se puede recuperar?¿Como?

Gracias por anticipado,

Prado
Respuesta Responder a este mensaje
#4 Prado
05/10/2006 - 16:36 | Informe spam
Perdona pero no comprendo tu pregunta. Esto es parte de un
procedimiento almacenado, en la parte que envio he omitido el nombre
del servidor y de la BD sustituyendolo por el contenido entre
corchetes, en el procedimiento si que aparecen.

Tambien me he dado cuenta de que no he incluido la declaración de la
variable @target que es un parámetro que recibe el procedimiento. Pero
no "veo" donde esta el problema.

Gracias,

Prado

Maxi ha escrito:

De donde estas ejecutando esto? porque aca estas teniendo el problema


Salu2

Microsoft MVP SQL Server
Culminis Speaker
INETA Speaker

"Prado" escribió en el mensaje
news:
Dentro de un procedimiento almacenado, las instrucciones son las
siguientes:

declare @ID_Integrity int
declare @osql2 VARCHAR(512)
set @osql2='osql /E /S [nombreservidor] /d [nombreBD] /Q "insert
IntegrityChecks (Servername,Databasename,Repairneeded,Repairdone,
CheckDate)
values ('''+@@ServerName +''','''+ @target + ''', 0 , 0, getdate() )"'

set @ID_Integrity = @@identity

Necesito recuperar el identity que genera esta inserción para despues
poder actualizar el registro que inserto. Es un procedimiento que puede
tener varias ejecuciones a la vez.

Gracias,

Prado

Maxi ha escrito:

> Hopl, podrias mostrar como lo estas haciendo?
>
>
> Salu2
>
> Microsoft MVP SQL Server
> Culminis Speaker
> INETA Speaker
>
> "Prado" escribió en el mensaje
> news:
> Hola,
>
> estoy ejecutando un insert en una tabla con un comando osql, cuando
> intento recuperar el identity generado por el insert siempre recibo
> NULL, tanto si asigno a la variable el valor de @@identity como si le
> asigno SCOPE_IDENTITY().
>
> ¿Alguien sabe si se puede recuperar?¿Como?
>
> Gracias por anticipado,
>
> Prado
Respuesta Responder a este mensaje
#5 Prado
08/10/2006 - 09:43 | Informe spam
Hola,

¿alguna sugerencia sobre cual es el error que estoy comitiendo o
como debería hacerlo?

Gracias por anticipado,

Prado

Prado ha escrito:

Perdona pero no comprendo tu pregunta. Esto es parte de un
procedimiento almacenado, en la parte que envio he omitido el nombre
del servidor y de la BD sustituyendolo por el contenido entre
corchetes, en el procedimiento si que aparecen.

Tambien me he dado cuenta de que no he incluido la declaración de la
variable @target que es un parámetro que recibe el procedimiento. Pero
no "veo" donde esta el problema.

Gracias,

Prado

Maxi ha escrito:

> De donde estas ejecutando esto? porque aca estas teniendo el problema
>
>
> Salu2
>
> Microsoft MVP SQL Server
> Culminis Speaker
> INETA Speaker
>
> "Prado" escribió en el mensaje
> news:
> Dentro de un procedimiento almacenado, las instrucciones son las
> siguientes:
>
> declare @ID_Integrity int
> declare @osql2 VARCHAR(512)
> set @osql2='osql /E /S [nombreservidor] /d [nombreBD] /Q "insert
> IntegrityChecks (Servername,Databasename,Repairneeded,Repairdone,
> CheckDate)
> values ('''+@@ServerName +''','''+ @target + ''', 0 , 0, getdate() )"'
>
> set @ID_Integrity = @@identity
>
> Necesito recuperar el identity que genera esta inserción para despues
> poder actualizar el registro que inserto. Es un procedimiento que puede
> tener varias ejecuciones a la vez.
>
> Gracias,
>
> Prado
>
> Maxi ha escrito:
>
> > Hopl, podrias mostrar como lo estas haciendo?
> >
> >
> > Salu2
> >
> > Microsoft MVP SQL Server
> > Culminis Speaker
> > INETA Speaker
> >
> > "Prado" escribió en el mensaje
> > news:
> > Hola,
> >
> > estoy ejecutando un insert en una tabla con un comando osql, cuando
> > intento recuperar el identity generado por el insert siempre recibo
> > NULL, tanto si asigno a la variable el valor de @@identity como si le
> > asigno SCOPE_IDENTITY().
> >
> > ¿Alguien sabe si se puede recuperar?¿Como?
> >
> > Gracias por anticipado,
> >
> > Prado
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida