powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Raiserror ?
12 сообщений из 12, страница 1 из 1
Raiserror ?
    #32046689
Работают два синтаксиса, но хотелось бы использовать первый для того что бы не определять сообщения в master..sysmessages. Есть ли возможность использовать в 1 конструкции параметры, Severity level, state? В BOL нет описания первой конструкции (или я плохо искал).

raiserror 60000 'Мое сообщение'
raiserror(60000,16,1)
...
Рейтинг: 0 / 0
Raiserror ?
    #32048905
MIN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не советую использовать недокументированные функции вообще, могут возникнуть проблемы
...
Рейтинг: 0 / 0
Raiserror ?
    #32048928
Bob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Bob
Гость
На самом деле, если глянуть в BOL то там представлен следующий синтаксис

RAISERROR ( { msg_id | msg_str } { , severity , state }
[ , argument [ ,...n ] ] )
[ WITH option [ ,...n ] ]

Прошу обратить внимание на msg_str - текст сообщения. Т.е. запросто можно написать RAISERROR('Everything failed.', 16,1). Проверено на практике.
...
Рейтинг: 0 / 0
Raiserror ?
    #32049037
2 Bob.
Вопрос возник из-за того, что в этом вызове RAISERROR('Everything failed.', 16,1) код ошибки 50000 всегда. Как приложение тогда будет определять ошибку. Человеку не хочется определять сообщения в master..sysmessages.

2 All.
Вопрос снимается.
...
Рейтинг: 0 / 0
Raiserror ?
    #32049104
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Raiserror ?
    #32049117
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую всех

2Александр Гладченко

Пардон,

В приведенном материале нет даже упоминания первого варианта. Или я слеп?

P.S.
2Алексей Кубенко:

Я этот вопрос уже подымал, ответов не было.


Удачи
...
Рейтинг: 0 / 0
Raiserror ?
    #32049121
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос возник из-за того, что в этом вызове RAISERROR('Everything failed.', 16,1) код ошибки 50000 всегда.

я с этим сталкивался в клиенте под ADO - там действительно системная ошибка всегда одинаковая, но в самом объекте recordset есть коллекция errors - вот там и возвращаются твои номера ошибок.
...
Рейтинг: 0 / 0
Raiserror ?
    #32049156
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jimmers
Первый вариант - это не решение, просто Алексей Кубенко описал что он хочет получить, а ссылка приведенная Александром Гладченко как раз и содержит ответ.

Применительно к примеру, это выглядит примерно так:

-- Запись моего сообщения об ошибке с указанным
-- номером в системную таблицу

EXEC sp_admessage 60000, 16, 'Мое сообщение'

-- Генерация моей ошибки с ранее сохраненным текстом

RAISERROR(60000,16,1)
...
Рейтинг: 0 / 0
Raiserror ?
    #32049162
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2ВладимирМ:

Вы невнимательно прочли вопрос: “для того что бы не определять сообщения в master..sysmessages”

Удачи
...
Рейтинг: 0 / 0
Raiserror ?
    #32049169
2 ВладимирМ.
Вопрос звучал
Работают два синтаксиса, но хотелось бы использовать первый для того что бы не определять сообщения в master..sysmessages . Есть ли возможность использовать в 1 конструкции параметры, Severity level, state?
Человек меня спросивший про RAISERROR не хочет иметь ни бэкапа мастера, ни скрипта (хотя мне кажется нормальным держать скрипт) в котором были бы sp_addmessage-и, объясняя это тем что если он уйдет все может затеряться, может упасть сервак и в наличии будет только бэкап базы. При восстановлении же бэкапа на другом серваке сообщений не будет. Поэтому он хочет использовать первый вариант.
Решение частичное найдено, что касается параметров тогда почему то не решили проверить.
declare @v varchar
set @v='Error'
raiserror 60000 @v
А вот Severity level не задашь в первом варианте (я правда не знаю ему(человеку) нужно это или нет и спросить не могу так как в отпуске).
...
Рейтинг: 0 / 0
Raiserror ?
    #32049177
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извини, я тут проверил... Не знал, что такой синтаксис у RIASERROR в принципе допустим :(. В BOL ведь написано несколько по другому.

Тогда вообще просто не вижу проблемы.
...
Рейтинг: 0 / 0
Raiserror ?
    #32049217
Серг70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я делаю это так
Код: plaintext
1.
RaisError('Ошибка %d', 16 , 1 , 777 )
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Raiserror ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]