sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo establecer el valor de la variable usando 'ejecutar' en t-sql?

Puede usar parámetros de salida con sp_executesql.

DECLARE @dbName nvarchar(128) = 'myDb'
DECLARE @siteId int 
DECLARE @SQL nvarchar(max) = N'SELECT TOP 1 @siteId = Id FROM ' + quotename(@dbName) + N'..myTbl'
exec sp_executesql @SQL, N'@siteId int out', @siteId out
select @siteId