Aracılığıyla paylaş


SqlError Sınıf

Tanım

SQL Server tarafından döndürülen uyarı veya hatayla ilgili bilgileri toplar.

public ref class SqlError sealed
public sealed class SqlError
[System.Serializable]
public sealed class SqlError
type SqlError = class
[<System.Serializable>]
type SqlError = class
Public NotInheritable Class SqlError
Devralma
SqlError
Öznitelikler

Örnekler

Aşağıdaki örnek koleksiyondaki her SqlError birini SqlErrorCollection görüntüler.

public static void ShowSqlException(string connectionString)
{
    string queryString = "EXECUTE NonExistantStoredProcedure";

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        try
        {
            command.Connection.Open();
            command.ExecuteNonQuery();
        }
        catch (SqlException ex)
        {
            DisplaySqlErrors(ex);
        }
    }
}

private static void DisplaySqlErrors(SqlException exception)
{
    for (int i = 0; i < exception.Errors.Count; i++)
    {
        Console.WriteLine("Index #" + i + "\n" +
            "Error: " + exception.Errors[i].ToString() + "\n");
    }
    Console.ReadLine();
}
Public Sub ShowSqlException(ByVal connectionString As String)
    Dim queryString As String = "EXECUTE NonExistantStoredProcedure"

    Using connection As New SqlConnection(connectionString)
        Dim command As New SqlCommand(queryString, connection)

        Try
            command.Connection.Open()
            command.ExecuteNonQuery()

        Catch ex As SqlException
            DisplaySqlErrors(ex)
        End Try
    End Using
End Sub

Private Sub DisplaySqlErrors(ByVal exception As SqlException)
    Dim i As Integer

    For i = 0 To exception.Errors.Count - 1
        Console.WriteLine("Index #" & i & ControlChars.NewLine & _
            "Error: " & exception.Errors(i).ToString() & ControlChars.NewLine)
    Next i
    Console.ReadLine()
End Sub

Açıklamalar

Bu sınıf, bir hata oluştuğunda SQL Server için .NET Framework Veri Sağlayıcısı tarafından oluşturulur. örneği SqlError , tarafından oluşturulur ve yönetilir SqlErrorCollectionve bu da sınıfı tarafından SqlException oluşturulur.

Önem derecesi 10 veya daha az olan iletiler bilgilendiricidir ve kullanıcının girdiği bilgilerdeki hatalardan kaynaklanan sorunları gösterir. 11 ile 16 arasında önem düzeyleri kullanıcı tarafından oluşturulur ve kullanıcı tarafından düzeltilebilir. 17 ile 25 arasında önem derecesi, yazılım veya donanım hatalarını gösterir. Düzey 17, 18 veya 19 hatası oluştuğunda çalışmaya devam edebilirsiniz, ancak belirli bir deyimi yürütemeyebilirsiniz.

önem SqlConnection düzeyi 19 veya daha az olduğunda açık kalır. Önem düzeyi 20 veya daha yüksek olduğunda, sunucu genellikle öğesini SqlConnectionkapatır. Ancak kullanıcı bağlantıyı yeniden açabilir ve devam edebilir. Her iki durumda da komutunu yürüten yöntem tarafından bir SqlException oluşturulur.

SQL Server tarafından oluşturulan hatalar hakkında daha fazla bilgi için bkz. Veritabanı Altyapısı Hataları. Önem derecesi düzeyleri hakkında daha fazla bilgi için bkz. Veritabanı Altyapısı Hata Önem Dereceleri.

Özellikler

Class

SQL Server döndürülen hatanın önem düzeyini alır.

LineNumber

Transact-SQL komut toplu işleminin veya hatayı içeren saklı yordamın içindeki satır numarasını alır.

Message

Hatayı açıklayan metni alır.

Number

Hata türünü tanımlayan bir sayı alır.

Procedure

Hatayı oluşturan saklı yordamın veya uzak yordam çağrısının (RPC) adını alır.

Server

Hatayı oluşturan SQL Server örneğinin adını alır.

Source

Hatayı oluşturan sağlayıcının adını alır.

State

Hatanın benzersiz durum kodunu alır.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Hata iletisinin tam metnini alır.

Şunlara uygulanır

Ayrıca bkz.