If you have not worked with MS SQL, severity is based on 5 levels.
The code contains a genuine error, and if executed, may not run as expected. For example, a syntax error or a reference to a non-existent method will cause a Level 0 error.
The code is syntactically correct, and has some defined meaning, but it may not be what the programmer was expecting. For example, a statement with no side effects such as x+1 will generate a Level 1 warning.
The code is correct but may cause problems in the future. For example, using deprecated features will generate a Level 2 warning.
The code is correct but may result in bad performance. For example, if type inferencing fails for a variable, a Level 3 warning will be issued.
The code is correct but there may be a better way to accomplish the same thing. For example, using a non-Common Language Specification (CLS) compliant method signature will generate a Level 4 warning.