Duplicar posible:
SQL Server Output Clause into a scalar variable¿Cómo puedo asignar el valor de salida insertado a una variable en el servidor sql?
DECLARE @id int
INSERT INTO MyTable(name)
OUTPUT @id = Inserted.id
VALUES('XYZ')
estoy tratando como la de arriba. ¿Como es posible?
Gracias señor, ¿No es posible asignar directamente a int variable? –
No, no puede usar la variable local. Si usa el código anterior, puede acceder a los datos y establecer el valor de la tabla en una variable –
@RakeshHolkar - La sintaxis INSERT le permite insertar múltiples registros, por lo que la sintaxis OUTPUT también debe poder tratar con múltiples registros. Como tal, incluso si solo inserta un registro, OUTPUT le devuelve un conjunto de datos. Aunque ese conjunto es una sola fila con un solo campo, es un conjunto y no un número entero. – MatBailie