Настройка состояния 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 не возвращает результатов, но содержимое функции возвращает результаты
  • Как изменить имя сервера SQL2012 на localhost?
  • SQL Server - та же таблица в нескольких схемах
  • Полнотекстовый поиск не работает, если включено стоп-слово, даже если стоп-лист пуст
  • Невозможно создать хранимую процедуру с параметром вывода таблицы
  • Получить размер вставленной строки в SQL Server
  • Могу ли я разработать SQL Server Express для последующего развертывания на полном SQL Server?
  • «Сервисный брокер». Главный сервер «sa» не может получить доступ к базе данных в контексте текущей безопасности
  • Операторы * = и = * sql
  • Перечислите все рабочие даты между двумя датами в SQL
  • Interesting Posts

    Обновление столбцов таблицы sql с данными из другой таблицы

    Как убить подключения к базе данных Azure SQL, если я не могу получить к ней доступ?

    sp_depends в SQL Server, каковы возможные зависимости?

    Миграции платформы Entity Framework – управление филиалами

    Как правильно выбрать значения хэша SHA1?

    Считайте строки для двух столбцов, используя два разных предложения

    Подключение Postgres ODBC к SQL Server Reporting Services / Data Tools / Report Builder

    Повторить частоту кортежа

    даты ведут себя по-разному на разных dbs?

    Порядок «Присоединиться» приведет к различной производительности запросов

    эквивалент rowlock xlock holdlock (sql server) для postgres

    Как установить «Имя приложения» в строке подключения ADODB

    Возврат результатов, которые присутствуют в одной таблице, но не в другой

    Сервер Sql занимает слишком много времени для выполнения запроса обновления для нескольких строк

    Использование пользовательской функции в SQL, возвращающей таблицу на основе двух параметров

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