27 de abril de 2004

Obterner el valor de identity al hacer un insert en SQL

Este truquito permite poner el valor de la columna identity de SQL Server en un cursor al momento de hacer el INSER en la tabla sin tener que hacer una nueva consulta, ni usar Store Procedure.
qsql = "SET NOCOUNT ON INSERT INTO documentos (TipoDocumento, NroDocumento, Fecha)"
qsql = qsql + "values(1,555,'20/04/2004') SELECT @@IDENTITY as iddocumento SET NOCOUNT OFF"
qhandle = SQLCONNECT(MiConexion)
IF qhandle > 0
  grabaok = SQLEXEC(qhandle, qsql, "MiCursor")
ENDIF
Si fue exitoso en MiCursor obtendré un campo con el valor del identity de la tabla documentos con nombre idDocumento.

Saludos.

Hernan Perez Tonini

1 comentario :

  1. eres un genio, gracias
    Enero 2022, y sigo desarrollando en visualfoxpro con azure.

    ResponderBorrar

Los comentarios son moderados, por lo que pueden demorar varias horas para su publicación.