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
SqlException (Clase)

La excepción que se produce cuando SQL Server devuelve una advertencia o un error. Esta clase no se puede heredar.

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

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

Esta clase se crea siempre que el proveedor de datos de .NET Framework para SQL Server encuentra un error generado en el servidor. Los errores en el cliente se producen como excepciones estándar de Common Language Runtime. SqlException siempre contiene al menos una instancia de SqlError.

Los mensajes con un nivel de gravedad igual o menor que 10 son mensajes informativos e indican los problemas ocasionados 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 gravedad es igual o mayor que 20, 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 SqlException.

Para obtener información sobre los mensajes informativos y de advertencia enviados por SQL Server, vea la sección Solución de problemas de los Libros en pantalla de SQL Server. La clase SqlException se asigna a la gravedad de SQL Server.

En el ejemplo siguiente se genera una excepción SqlException y, a continuación, se muestra.

Visual Basic
Public Sub ShowSqlException(ByVal connectionString As String)
    Dim queryString As String = "EXECUTE NonExistantStoredProcedure"
    Dim errorMessages As New StringBuilder()

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

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

        Catch ex As SqlException
            Dim i As Integer
            For i = 0 To ex.Errors.Count - 1
                errorMessages.Append("Index #" & i.ToString() & ControlChars.NewLine _
                    & "Message: " & ex.Errors(i).Message & ControlChars.NewLine _
                    & "LineNumber: " & ex.Errors(i).LineNumber & ControlChars.NewLine _
                    & "Source: " & ex.Errors(i).Source & ControlChars.NewLine _
                    & "Procedure: " & ex.Errors(i).Procedure & ControlChars.NewLine)
            Next i
            Console.WriteLine(errorMessages.ToString())
        End Try
    End Using
End Sub
C#
public static void ShowSqlException(string connectionString)
{
    string queryString = "EXECUTE NonExistantStoredProcedure";
    StringBuilder errorMessages = new StringBuilder();
    
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        try
        {
            command.Connection.Open();
            command.ExecuteNonQuery();
        }
        catch (SqlException ex)
        {
            for (int i = 0; i < ex.Errors.Count; i++)
            {
                errorMessages.Append("Index #" + i + "\n" +
                    "Message: " + ex.Errors[i].Message + "\n" +
                    "LineNumber: " + ex.Errors[i].LineNumber + "\n" +
                    "Source: " + ex.Errors[i].Source + "\n" +
                    "Procedure: " + ex.Errors[i].Procedure + "\n");
            }
            Console.WriteLine(errorMessages.ToString());
        }
    }
}
System.Object
   System.Exception
     System.SystemException
       System.Runtime.InteropServices.ExternalException
         System.Data.Common.DbException
          System.Data.SqlClient.SqlException
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
Consulta      Hufer   |   Editar   |   Mostrar historial
Hola mi nombre es Hugo Fernando

estoy empesando a trabajar con vb8 ya realize una pruebas con coneccion a Mysql 5.1 y me a funcionado pero la verdad con sqlserver 2005 no se como configurarle un usuario para trabajar en red y poderlo trabajar desde vb8

gracias por su ayuda
Processing
© 2009 Microsoft Corporation. Reservados todos los derechos. Términos de uso  |  Marcas Registradas  |  Privacidad
Page view tracker