Нет, вы должны использовать sp_executesql. Вот так:
DECLARE @multipleColumn VARCHAR(1000) = NULL, -- Must be null
@schema_name NVARCHAR(128)='dbo',
@table_source NVARCHAR(128)='<src>',
@table_target NVARCHAR(128)='<dest>',
@stmt NVARCHAR(MAX);
SELECT @multipleColumn = COALESCE(@multipleColumn+', ', '') + QUOTENAME(c.COLUMN_NAME)
FROM INFORMATION_SCHEMA.COLUMNS AS c
WHERE
c.TABLE_SCHEMA = @schema_name
AND c.TABLE_NAME = @table_source;
SET @stmt=CONCAT('INSERT INTO ', QUOTENAME(@table_target),' (', @multipleColumn, ')
SELECT ', @multipleColumn, ' FROM ', QUOTENAME(@table_source), ';');
EXEC sp_executesql @stmt;
И, как всегда, будьте осторожны с sql инъекцией при использовании sp_executesql!