Si tengo una instrucción de inserción, tales como:¿Cómo uso una cláusula OUTPUT de una instrucción INSERT para obtener el valor de identidad?
INSERT INTO MyTable
(
Name,
Address,
PhoneNo
)
VALUES
(
'Yatrix',
'1234 Address Stuff',
'1112223333'
)
¿Cómo se configura @var INT
al valor de identidad de la nueva fila (llamado Id
) utilizando la cláusula OUTPUT? He visto ejemplos de poner INSERTED.Name en variables de tabla, por ejemplo, pero no puedo ingresarlo en una variable que no sea de tabla.
He intentado OUPUT INSERTED.Id AS @var
, SET @var = INSERTED.Id
, pero ninguno ha funcionado.
Ya sé sobre @@ SCOPE_IDENTITY, específicamente deseo saber cómo hacerlo con OUPUT. Gracias. – Yatrix
Necesita insertarlo en una variable de tabla y luego seleccionarlo. No hay sintaxis para asignar directamente a una variable escalar de la cláusula 'OUTPUT'. –
La [cláusula OUTPUT] (http://msdn.microsoft.com/en-us/library/ms177564.aspx) tiene que enviar a una tabla o variable de tabla. – mellamokb