Compartir a través de


SqlError Clase

Definición

Recopila información relevante para una advertencia o un error devuelto por 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
Herencia
SqlError
Atributos

Ejemplos

En el ejemplo siguiente se muestra cada una SqlError de las SqlErrorCollection colecciones.

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";
    }
}

Comentarios

El proveedor de datos de .NET Framework crea esta clase para SQL Server cuando se produce un error. La clase crea y administra SqlErrorCollectionuna instancia de SqlError , que a su vez se crea.SqlException

Los mensajes con un nivel de gravedad de 10 o menos son informativos e indican problemas ocasionados por errores en la información proporcionada por un usuario. El usuario genera los niveles de gravedad de 11 a 16 y puede corregirlo el usuario. Los niveles de gravedad entre 17 y 25 indican errores de software o hardware. Cuando se produce un error de nivel 17, 18 o 19, puede continuar trabajando, aunque es posible que no pueda ejecutar una instrucción determinada.

La conexión SqlConnection permanece abierta cuando el nivel de gravedad es 19 o inferior. Cuando el nivel de gravedad es 20 o superior, normalmente el servidor cierra la conexión SqlConnection. Sin embargo, el usuario puede volver a abrir la conexión y continuar. En ambos casos, el método que ejecuta el comando genera una excepción SqlException.

Para obtener más información sobre los errores generados por SQL Server, vea Causa y resolución de errores del motor de base de datos. Para obtener más información sobre los niveles de gravedad, vea Gravedades de errores del motor de base de datos.

Propiedades

Class

Obtiene el nivel de gravedad del error devuelto desde SQL Server.

LineNumber

Obtiene el número de línea del procedimiento almacenado o lote de comandos de Transact-SQL que contiene el error.

Message

Obtiene el texto que describe el error.

Number

Obtiene el número que identifica el tipo de error.

Procedure

Obtiene el nombre del procedimiento almacenado o llamada a procedimiento remoto (RPC) que ha generado el error.

Server

Obtiene el nombre de la instancia de SQL Server que ha generado el error.

Source

Obtiene el nombre del proveedor que ha generado el error.

State

Algunos mensajes de error se pueden generar en varios puntos del código de Motor de base de datos. Por ejemplo, el error 1105 se puede generar bajo diferentes condiciones. Cada condición específica bajo la que se genera un error asigna un código de estado único.

Métodos

ToString()

Obtiene el texto completo del mensaje de error.

Se aplica a

Consulte también