다음을 통해 공유


SqlError.Class 속성

정의

SQL Server에서 반환한 오류의 심각도 수준을 가져옵니다.

public:
 property System::Byte Class { System::Byte get(); };
public byte Class { get; }
member this.Class : byte
Public ReadOnly Property Class As Byte

속성 값

오류의 심각도 수준을 나타내는 1부터 25까지의 값입니다. 기본값은 0입니다.

예제

다음 예제에서는 각 SqlError 내에서 SqlErrorCollection 컬렉션입니다.

using Microsoft.Data.SqlClient;
using System.Collections.Generic;
using System.Text;

namespace Classic_WebData_SqlError.StateCS
{
    class Program
    {
        static void Main()
        {
            //DisplaySqlErrors();
        }

        public void DisplaySqlErrors(SqlException exception)
        {
            for (int i = 0; i < exception.Errors.Count; i++)
            {
                Console.WriteLine("Index #" + i + "\n" +
                    "Source: " + exception.Errors[i].Source + "\n" +
                    "Number: " + exception.Errors[i].Number.ToString() + "\n" +
                    "State: " + exception.Errors[i].State.ToString() + "\n" +
                    "Class: " + exception.Errors[i].Class.ToString() + "\n" +
                    "Server: " + exception.Errors[i].Server + "\n" +
                    "Message: " + exception.Errors[i].Message + "\n" +
                    "Procedure: " + exception.Errors[i].Procedure + "\n" +
                    "LineNumber: " + exception.Errors[i].LineNumber.ToString());
            }
            Console.ReadLine();
        }
    }
}

설명

심각도가 10 이하인 메시지는 정보를 전달하기 위한 것이며 사용자가 정보를 잘못 입력하여 문제가 발생했음을 의미합니다. 11에서 16까지의 심각도 수준은 사용자가 생성하며 사용자가 수정할 수 있습니다. 17에서 25까지의 심각도는 소프트웨어나 하드웨어 오류를 나타냅니다. 수준 17, 18 또는 19 오류가 발생하면 특정 문을 실행하지 못할 수도 있지만 작업을 계속할 수 있습니다.

SqlConnection 심각도 수준이 19 이하인 경우 는 열린 상태로 유지됩니다. 심각도 수준이 20 이상인 경우 서버는 일반적으로 를 닫습니다 SqlConnection. 그러나 사용자는 연결을 다시 열고 계속할 수 있습니다. 두 경우 모두 명령을 SqlException 실행하는 메서드에 의해 가 생성됩니다.

SQL Server 생성된 오류에 대한 자세한 내용은 데이터베이스 엔진 이벤트 및 오류를 참조하세요.

적용 대상