Передача имени таблицы в качестве параметра хранимой процедуре Azure Synapse и присвоение результата запроса (используя переданный параметр в SQL) переменной.
Пример кода ниже:
CREATE PROC [TEST].[DEMO_PROC] @TableName [VARCHAR](1000) AS
BEGIN
DECLARE @count_variable INT;
SELECT @count_variable=count(1) FROM @TableName
PRINT @count_variable
END
ОШИБКА: Msg 103010, уровень 16, состояние 1, строка 5 Ошибка синтаксического анализа в строке: 39, столбец: 42: неправильный синтаксис рядом с '@TableName'.
Я получаю сообщение об ошибке, в котором говорится, что TableName не может быть назначен в качестве параметра. Если я укажу жестко запрограммированное имя таблицы вместо переменной, она будет работать.