Настройка состояния NOCOUNT с локальной переменной

Я пытаюсь сохранить статус NOCOUNT, чтобы вернуть его в исходное состояние в конце моей процедуры, но все, что он делает, это дать мне Incorrect syntax near 'NOCOUNT'. ошибка.

Что я делаю не так?

 IF @@OPTIONS & 512 <> 0 /* check original state of NOCOUNT */ PRINT N'This user has SET NOCOUNT turned ON.'; ELSE PRINT N'This user has SET NOCOUNT turned OFF.'; DECLARE @NCStat bit SET @NCStat = ( @@OPTIONS & 512 ) /* sets @NCStat to original state of NOCOUNT */ SET NOCOUNT ON ; IF @@OPTIONS & 512 <> 0 /* verify state of NOCOUNT */ PRINT N'This user has SET NOCOUNT turned ON.'; ELSE PRINT N'This user has SET NOCOUNT turned OFF.'; PRINT N'NCStat = ' + cast(@NCStat as nvarchar) ; /* verify value of @NCStat */ /* line 23 */ SET NOCOUNT @NCStat ; /* return NOCOUNT to original state */ IF @@OPTIONS & 512 <> 0 /* verify state of NOCOUNT */ PRINT N'This user has SET NOCOUNT turned ON.'; ELSE PRINT N'This user has SET NOCOUNT turned OFF.'; GO 

Если строка 23 отмечена, все остальные линии работают нормально, но строка 23 дает указанную выше ошибку.

Вы не можете использовать переменную для установки NOCOUNT :

 /* line 23 */ SET NOCOUNT @NCStat ; /* not legal syntax */ 

Я бы сделал это вместо этого:

 /* line 23 */ if @NCStat = 1 SET NOCOUNT ON else SET NOCOUNT OFF 
  • Функция SQL не возвращает результатов, но содержимое функции возвращает результаты
  • Имея базовую проблему SQL с использованием Microsoft SQL Server 2012
  • Не удалось подключиться к SQL Server в Hydro GeoAnalyst
  • Вставьте 2 значения из двух разных таблиц в одну таблицу
  • Последовательность SQL Server 2012
  • СОЗДАТЬ МАСТЕР-КЛЮЧ - Ошибка проверки пароля
  • «Сервисный брокер». Главный сервер «sa» не может получить доступ к базе данных в контексте текущей безопасности
  • Получить размер вставленной строки в SQL Server
  • Почему я не могу подключиться к общему экземпляру SQL Server 2012 LocalDB?
  • Создание соединения с MDF-файлом в Visual Studio: «Файл используется»
  • Перечислите все рабочие даты между двумя датами в SQL
  • Interesting Posts

    SQL: как получить данные в месяц и год

    SQL-запрос, преобразованный в LINQ-DISTINCT.

    Как отслеживать шаги в профилировщике SQL только для конкретного приложения

    SQL Server с использованием шаблона внутри IN

    Код Sql 2008 для открытия файла

    SQL Server 2014 – XQuery – получить разделенный запятой список

    c # SqlДецимальный знак переворота при умножении малых чисел

    Нормализовать строку unicode в SQL Server?

    NHibernate Множество ко многим сопоставлениям с дополнительными столбцами в таблице сопоставлений

    удаление дубликатов из таблицы без использования временной таблицы

    Является ли JOIN более / менее эффективным, чем EXISTS IN, когда данные не нужны из второй таблицы?

    Создать последовательность, разбитую на несколько столбцов и смежную дату

    Было найдено несколько строк с данным идентификатором, когда я пытаюсь объединить объект

    Какая лучшая нулевая (близкая к нулю?) Реляционная база администрирования для настольного приложения Windows: Access, SQLite, SQL Server, другое?

    Сложный SQL-запрос – поиск элементов, соответствующих нескольким различным внешним ключам

    Давайте будем гением компьютера.