SQL ERROR Messages
Each error message displayed by SQL Server has an associated error message number that uniquely identifies the type of error. The error severity levels provide a quick reference for you about the nature of the error. The error state number is an integer value between 1 and 127; it represents information about the source that issued the error. The error message is a description of the error that occurred. The error messages are stored in the sysmessages system table.
We can see all the system messages running following statement in query analyzer.
SELECT * FROM master.dbo.sysmessages
The severity level are displayed in the table below.
|0 to 10||Messages with a severity level of 0 to 10 are informational messages and not actual errors.|
|11 to 16||Severity levels 11 to 16 are generated as a result of user problems and can be fixed by the user. For example, the error message returned in the invalid update query, used earlier, had a severity level of 16.|
|17||Severity level 17 indicates that SQL Server has run out of a configurable resource, such as locks. Severity error 17 can be corrected by the DBA, and in some cases, by the database owner.|
|18||Severity level 18 messages indicate nonfatal internal software problems.|
|19||Severity level 19 indicates that a nonconfigurable resource limit has been exceeded.|
|20||Severity level 20 indicates a problem with a statement issued by the current process.|
|21||Severity level 21 indicates that SQL Server has encountered a problem that affects all the processes in a database.|
|22||Severity level 22 means a table or index has been damaged. To try to determine the extent of the problem, stop and restart SQL Server. If the problem is in the cache and not on the disk, the restart corrects the problem. Otherwise, use DBCC to determine the extent of the damage and the required action to take.|
|23||Severity level 23 indicates a suspect database. To determine the extent of the damage and the proper action to take, use the DBCC commands.|
|24||Severity level 24 indicates a hardware problem.|
|25||Severity level 25 indicates some type of system error.|