У меня есть табличная переменная в SQL Server 2008
DECLARE @specsAndModel TABLE
(
specName VARCHAR(50)
,specVal VARCHAR(50)
)
INSERT INTO @specsAndModel
VALUES('[modelNumber]', 'F00-B4R')
Затем я позже строю строку под названием @query
, которую я в конечном счете пытаюсь передать в EXECUTE
, как в следующем примере:
DECLARE @query NVARCHAR(MAX);
SET @query = 'SELECT specName, specVal FROM @specsAndModel'
EXECUTE(@query)
Однако SQL Server дает мне сообщение об ошибке: Must declare the table variable "@specsAndModel".
После поиска, я думаю, это может быть связано с контекстом выполнения, но я не смог решить проблему.
Возможно ли вообще использовать табличную переменную в вызове функции execute?