Есть ли способ настроить сообщения, создаваемые операторами в SQL Server Query Analyzer? - PullRequest
0 голосов
/ 04 мая 2010

Если я запускаю простой запрос в SQL Query Analyzer, например:

SELECT * FROM TableName

Панель сообщений всегда создает сообщение, подобное:

(30 row(s) affected)

Если я запускаю хранимую процедуру со многими инструкциями, сообщения бесполезны, потому что нет указания на то, к чему относится каждое из них.

Итак, во-первых: есть ли способ настроить сообщения по умолчанию для каждого запроса?

например. Я бы хотел, чтобы конкретный запрос выдал сообщение вроде:

TableName query produced [numRowsAffected] results.

замена [numRowsActed] числом, которое появилось бы в сообщении по умолчанию.

Во-вторых, есть ли способ подавления сообщений по умолчанию для каждого запроса?

например. У меня есть локальная переменная типа TABLE, используемая в нескольких инструкциях.

Я не хочу, чтобы какое-либо сообщение отображалось для операторов, в которых я просто удаляю данные из этой переменной перед повторным использованием.

Я ищу решения, которые работают в SQL Server 8.0.

1 Ответ

2 голосов
/ 04 мая 2010

Вы можете использовать SET NOCOUNT ON , чтобы подавить возвращаемые счетчики строк. Просто поместите это в начало вашей хранимой процедуры.

Что касается возврата настраиваемого сообщения, если вам это действительно нужно, вам нужно будет вручную распечатать его из sproc:

например. Пример

SET NOCOUNT ON
SELECT TOP 5 TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
PRINT 'MyExampleQuery produced ' + CAST(@@RowCount AS VARCHAR(20)) + ' results'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...