Melody Friedenthal
Melody Friedenthal

Reputation: 117

sql raiseerror error.number wrong in VB

I wrote a T-SQL query which includes a test for valid EmployeeNo. If the EmployeeNo is not valid, I do the following:

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

Back in VB.Net I test the sql exception and found that when the Employee No is invalid the error.number is not 5005 as I would expect, but 2732.

What is the explanation for this?

Thank you.

Upvotes: 1

Views: 1306

Answers (1)

gbn
gbn

Reputation: 432180

You can't raise an error 5005 in your own code. Only the DB Engine can do this.

Error 2732 is the error that says you can't raise messages < 50000

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.

Upvotes: 1

Related Questions