Compartir vía


OdbcException Clase

Definición

Excepción que se genera cuando un origen de datos ODBC devuelve una advertencia o un error. Esta clase no puede heredarse.

public ref class OdbcException sealed : System::Data::Common::DbException
public ref class OdbcException sealed : SystemException
public sealed class OdbcException : System.Data.Common.DbException
[System.Serializable]
public sealed class OdbcException : SystemException
[System.Serializable]
public sealed class OdbcException : System.Data.Common.DbException
type OdbcException = class
    inherit DbException
[<System.Serializable>]
type OdbcException = class
    inherit SystemException
[<System.Serializable>]
type OdbcException = class
    inherit DbException
Public NotInheritable Class OdbcException
Inherits DbException
Public NotInheritable Class OdbcException
Inherits SystemException
Herencia
Herencia
Atributos

Ejemplos

En el ejemplo siguiente se genera una OdbcException excepción debido a un origen de datos que falta y, a continuación, se muestra la excepción.

public void ShowOdbcException()
{
   string mySelectQuery = "SELECT column1 FROM table1";
   OdbcConnection myConnection =
      new OdbcConnection("DRIVER={SQL Server};SERVER=MyServer;Trusted_connection=yes;DATABASE=northwind;");
   OdbcCommand myCommand = new OdbcCommand(mySelectQuery,myConnection);
   try
   {
      myCommand.Connection.Open();
   }
   catch (OdbcException e)
   {
     string errorMessages = "";

     for (int i=0; i < e.Errors.Count; i++)
     {
         errorMessages += "Index #" + i + "\n" +
                          "Message: " + e.Errors[i].Message + "\n" +
                          "NativeError: " + e.Errors[i].NativeError.ToString() + "\n" +
                          "Source: " + e.Errors[i].Source + "\n" +
                          "SQL: " + e.Errors[i].SQLState + "\n";
     }

     System.Diagnostics.EventLog log = new System.Diagnostics.EventLog();
     log.Source = "My Application";
     log.WriteEntry(errorMessages);
     Console.WriteLine("An exception occurred. Please contact your system administrator.");
   }
}
Public Sub ShowOdbcException()
    Dim mySelectQuery As String = "SELECT column1 FROM table1"
    Dim myConnection As New OdbcConnection _
       ("DRIVER={SQL Server};SERVER=MyServer;Trusted_connection=yes;DATABASE=northwind;")
    Dim myCommand As New OdbcCommand(mySelectQuery, myConnection)
    Try
        myCommand.Connection.Open()
    Catch e As OdbcException
        Dim errorMessages As String
        Dim i As Integer

        For i = 0 To e.Errors.Count - 1
            errorMessages += "Index #" & i.ToString() & ControlChars.Cr _
                           & "Message: " & e.Errors(i).Message & ControlChars.Cr _
                           & "NativeError: " & e.Errors(i).NativeError.ToString() & ControlChars.Cr _
                           & "Source: " & e.Errors(i).Source & ControlChars.Cr _
                           & "SQL: " & e.Errors(i).SQLState & ControlChars.Cr
        Next i

       Dim log As New System.Diagnostics.EventLog()
       log.Source = "My Application"
       log.WriteEntry(errorMessages)
       Console.WriteLine("An exception occurred. Please contact your system administrator.")
    End Try
End Sub

Comentarios

Esta clase se crea cada vez que OdbcDataAdapter encuentra un error generado por el servidor (los errores del lado cliente se generan como excepciones estándar de Common Language Runtime). Siempre contiene al menos una instancia de OdbcError.

Si la gravedad del error es demasiado grande, el servidor puede cerrar OdbcConnection. Sin embargo, el usuario puede volver a abrir la conexión y continuar.

Para obtener información general sobre el control de excepciones para un proveedor de datos de .NET Framework, vea SqlException.

Propiedades

BatchCommand

Si se produjo al DbException ejecutar un DbBatchobjeto , hace referencia al elemento específico DbBatchCommand que desencadenó la excepción.

(Heredado de DbException)
Data

Obtiene una colección de pares clave/valor que proporciona información definida por el usuario adicional sobre la excepción.

(Heredado de Exception)
DbBatchCommand

Cuando se invalida en una clase derivada, si se produjo al DbException ejecutar un DbBatch, hace referencia al elemento específico DbBatchCommand que desencadenó la excepción.

(Heredado de DbException)
ErrorCode

Obtiene el elemento HRESULT del error.

(Heredado de ExternalException)
Errors

Obtiene una colección de uno o varios objetos OdbcError que ofrecen información detallada sobre las excepciones que genera el proveedor de datos de .NET Framework para ODBC.

HelpLink

Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción.

(Heredado de Exception)
HResult

Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica.

(Heredado de Exception)
InnerException

Obtiene la instancia Exception que produjo la excepción actual.

(Heredado de Exception)
IsTransient

Indica si el error representado por esta DbException podría ser un error transitorio, es decir, si volver a intentar la operación de desencadenamiento podría realizarse correctamente sin ningún otro cambio.

(Heredado de DbException)
Message

Obtiene un mensaje que describe la excepción actual.

Message

Obtiene un mensaje que describe la excepción actual.

(Heredado de Exception)
Source

Obtiene el nombre del controlador ODBC que ha generado el error.

SqlState

Para los proveedores de bases de datos que lo admiten, contiene un código de retorno SQL estándar de cinco caracteres que indica si la operación de base de datos se realizó correctamente o no. Los dos primeros caracteres representan la clase del código de devolución (por ejemplo, error, correcto), mientras que los tres últimos caracteres representan la subclase, lo que permite detectar escenarios de error en una base de datos portable.

En el caso de los proveedores de bases de datos que no lo admitan o para escenarios de error inaplicables, contiene null.

(Heredado de DbException)
StackTrace

Obtiene una representación de cadena de los marcos inmediatos en la pila de llamadas.

(Heredado de Exception)
TargetSite

Obtiene el método que produjo la excepción actual.

(Heredado de Exception)

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetBaseException()

Cuando se invalida en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores.

(Heredado de Exception)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoletos.

Este miembro invalida GetObjectData(SerializationInfo, StreamingContext).

GetType()

Obtiene el tipo de tiempo de ejecución de la instancia actual.

(Heredado de Exception)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que contiene el HRESULT del error.

(Heredado de ExternalException)
ToString()

Crea y devuelve una representación de cadena de la excepción actual.

(Heredado de Exception)

Eventos

SerializeObjectState
Obsoletos.

Ocurre cuando una excepción se serializa para crear un objeto de estado de excepción que contenga datos serializados sobre la excepción.

(Heredado de Exception)

Se aplica a

Consulte también