Ошибка SQL. Ошибка в VB. - PullRequest
1 голос
/ 29 апреля 2010

Я написал запрос T-SQL, который включает в себя тест на действительный EmployeeNo. Если EmployeeNo недействителен, я делаю следующее:

RAISERROR(5005, 10, 1, N'Invalid Employee No')
return @@Error

Вернувшись в VB.Net, я протестировал исключение sql и обнаружил, что, когда № сотрудника недействителен, error.number не 5005, как я ожидал, а 2732.

Чем это объясняется?

Спасибо.

1 Ответ

1 голос
/ 29 апреля 2010

Вы не можете вызвать ошибку 5005 в своем собственном коде. Это может сделать только DB Engine.

Ошибка 2732 - ошибка, из-за которой вы не можете поднять сообщения <50000 </a>

SELECT description FROM sys.sysmessages m WHERE m.error = 2732 AND msglangid = 1033

Error number %ld is invalid. The number must be from %ld through %ld and it cannot be 50000.
...