Bagikan melalui


SqlError Kelas

Definisi

Mengumpulkan informasi yang relevan dengan peringatan atau kesalahan yang dikembalikan oleh SQL Server.

public ref class SqlError sealed
[System.Serializable]
public sealed class SqlError
public sealed class SqlError
[<System.Serializable>]
type SqlError = class
type SqlError = class
Public NotInheritable Class SqlError
Warisan
SqlError
Atribut

Contoh

Contoh berikut menampilkan masing-masing SqlError dalam SqlErrorCollection koleksi.

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

class Program
{
    static void Main()
    {
        string s = GetConnectionString();
        ShowSqlException(s);
        Console.ReadLine();
    }
    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();
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file.
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI";
    }
}

Keterangan

Kelas ini dibuat oleh Penyedia Data .NET Framework untuk SQL Server ketika terjadi kesalahan. Instans SqlError dibuat dan dikelola oleh SqlErrorCollection, yang pada gilirannya dibuat oleh SqlException kelas .

Pesan dengan tingkat keparahan 10 atau kurang bersifat informasi dan menunjukkan masalah yang disebabkan oleh kesalahan dalam informasi yang dimasukkan pengguna. Tingkat keparahan dari 11 hingga 16 dihasilkan oleh pengguna, dan dapat dikoreksi oleh pengguna. Tingkat keparahan dari 17 hingga 25 menunjukkan kesalahan perangkat lunak atau perangkat keras. Ketika kesalahan tingkat 17, 18, atau 19 terjadi, Anda dapat terus bekerja, meskipun Anda mungkin tidak dapat menjalankan pernyataan tertentu.

SqlConnection Tetap terbuka ketika tingkat keparahan adalah 19 atau kurang. Ketika tingkat keparahan adalah 20 atau lebih besar, server biasanya menutup SqlConnection. Namun, pengguna dapat membuka kembali koneksi dan melanjutkan. Dalam kedua kasus, SqlException dihasilkan oleh metode yang menjalankan perintah.

Untuk informasi selengkapnya tentang kesalahan yang dihasilkan oleh SQL Server, lihat Penyebab dan Resolusi Kesalahan Mesin Database. Untuk informasi selengkapnya tentang tingkat keparahan, lihat Tingkat Keparahan Kesalahan Mesin Database.

Properti

Class

Mendapatkan tingkat keparahan kesalahan yang dikembalikan dari SQL Server.

LineNumber

Mendapatkan nomor baris dalam batch perintah Transact-SQL atau prosedur tersimpan yang berisi kesalahan.

Message

Mendapatkan teks yang menjelaskan kesalahan.

Number

Mendapatkan angka yang mengidentifikasi jenis kesalahan.

Procedure

Mendapatkan nama prosedur tersimpan atau panggilan prosedur jarak jauh (RPC) yang menghasilkan kesalahan.

Server

Mendapatkan nama instans SQL Server yang menghasilkan kesalahan.

Source

Mendapatkan nama penyedia yang menghasilkan kesalahan.

State

Beberapa pesan kesalahan dapat dimunculkan di beberapa titik dalam kode untuk Mesin Database. Misalnya, kesalahan 1105 dapat dinaikkan untuk beberapa kondisi yang berbeda. Setiap kondisi tertentu yang menimbulkan kesalahan menetapkan kode status unik.

Metode

ToString()

Mendapatkan teks lengkap pesan kesalahan.

Berlaku untuk

Lihat juga