Evaluar y enviar comentarios

  Encender vista de ancho de banda bajo
Esta página es específica de
Microsoft Visual Studio 2005/.NET Framework 2.0

Hay además otras versiones disponibles para:
Biblioteca de clases de .NET Framework
SqlError (Clase)

Recopila información relevante para una advertencia o un error devuelto por SQL Server.

Espacio de nombres: System.Data.SqlClient
Ensamblado: System.Data (en system.data.dll)

Visual Basic (Declaración)
<SerializableAttribute> _
Public NotInheritable Class SqlError
Visual Basic (Uso)
Dim instance As SqlError
C#
[SerializableAttribute] 
public sealed class SqlError
C++
[SerializableAttribute] 
public ref class SqlError sealed
J#
/** @attribute SerializableAttribute() */ 
public final class SqlError
JScript
SerializableAttribute 
public final class SqlError

Esta clase se crea mediante el proveedor de datos de .NET Framework para SQL Server cuando se produce un error. Se crea una instancia de SqlError y se administra mediante SqlErrorCollection, que a su vez se crea mediante la clase SqlException.

Los mensajes con un nivel de gravedad igual o menor que 10 son mensajes informativos e indican los problemas producidos cuando un usuario no escribe la información correctamente. Los niveles de gravedad del 11 al 16 son errores generados por el usuario y que él mismo puede corregir. Los niveles de gravedad del 17 al 25 indican errores de software o hardware. Cuando se produce un error de niveles 17, 18 o 19, se puede continuar trabajando, aunque es posible que no se pueda ejecutar una determinada instrucción.

SqlConnection permanece abierto cuando el nivel de gravedad es igual o menor que 19. Si el nivel de severidad es igual o mayor que 20, normalmente, el servidor cierra la 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 SqlException.

En el siguiente ejemplo se muestra cada SqlError dentro de la colección SqlErrorCollection.

Visual Basic
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
C#
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();
}
System.Object
  System.Data.SqlClient.SqlError
Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2009 Microsoft Corporation. Reservados todos los derechos. Términos de uso  |  Marcas Registradas  |  Privacidad
Page view tracker