Compartilhar via


OleDbException Classe

Definição

A exceção gerada quando o provedor subjacente retorna um aviso ou erro para uma fonte de dados OLE DB. Essa classe não pode ser herdada.

public ref class OleDbException sealed : System::Data::Common::DbException
public ref class OleDbException sealed : System::Runtime::InteropServices::ExternalException
public sealed class OleDbException : System.Data.Common.DbException
[System.Serializable]
public sealed class OleDbException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
public sealed class OleDbException : System.Data.Common.DbException
type OleDbException = class
    inherit DbException
[<System.Serializable>]
type OleDbException = class
    inherit ExternalException
[<System.Serializable>]
type OleDbException = class
    inherit DbException
Public NotInheritable Class OleDbException
Inherits DbException
Public NotInheritable Class OleDbException
Inherits ExternalException
Herança
Herança
Atributos

Exemplos

O exemplo a seguir gera um OleDbException devido a uma fonte de dados ausente e exibe a exceção.

public void ShowOleDbException()
{
   string mySelectQuery = "SELECT column1 FROM table1";
   OleDbConnection myConnection =
      new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=");
   OleDbCommand myCommand = new OleDbCommand(mySelectQuery,myConnection);

   try
   {
      myCommand.Connection.Open();
   }
   catch (OleDbException 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 + "\n" +
                          "Source: " + e.Errors[i].Source + "\n" +
                          "SQLState: " + 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 ShowOleDbException()
    Dim mySelectQuery As String = "SELECT column1 FROM table1"
    Dim myConnection As New OleDbConnection _
       ("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=")
    Dim myCommand As New OleDbCommand(mySelectQuery, myConnection)

    Try
        myCommand.Connection.Open()
    Catch e As OleDbException
        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 & ControlChars.Cr _
                           & "Source: " & e.Errors(i).Source & ControlChars.Cr _
                           & "SQLState: " & 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

Comentários

Essa classe é criada sempre que o provedor de dados .NET Framework para OLE DB encontra um erro gerado do servidor. (Os erros do lado do cliente são gerados como exceções padrão do Common Language Runtime.) OleDbException sempre contém pelo menos uma instância de OleDbError.

Se a severidade do erro for muito grande, o servidor poderá fechar o OleDbConnection. No entanto, o usuário pode reabrir a conexão e continuar.

Para obter informações gerais sobre como lidar com exceções para um provedor de dados .NET Framework, consulte SqlException.

Propriedades

BatchCommand

Se isso DbException tiver sido gerado ao executar um DbBatch, referencia o específico DbBatchCommand que disparou a exceção.

(Herdado de DbException)
Data

Obtém uma coleção de pares de chave/valor que fornecem informações definidas pelo usuário adicionais sobre a exceção.

(Herdado de Exception)
DbBatchCommand

Quando substituído em uma classe derivada, se isso DbException foi gerado ao executar um DbBatch, faz referência ao específico DbBatchCommand que disparou a exceção.

(Herdado de DbException)
ErrorCode

Obtém o HRESULT do erro.

Errors

Obtém uma coleção de um ou mais objetos OleDbError que fornecem informações detalhadas sobre as exceções geradas pelo Provedor de Dados .NET Framework para OLE DB.

HelpLink

Obtém ou define um link para o arquivo de ajuda associado a essa exceção.

(Herdado de Exception)
HResult

Obtém ou define HRESULT, um valor numérico codificado que é atribuído a uma exceção específica.

(Herdado de Exception)
InnerException

Obtém a instância Exception que causou a exceção atual.

(Herdado de Exception)
IsTransient

Indica se o erro representado pela DbException pode ser transitório, ou seja, se a repetição da operação de acionamento pode ter sucesso sem nenhuma outra alteração.

(Herdado de DbException)
Message

Obtém o texto que descreve o erro.

Message

Obtém uma mensagem que descreve a exceção atual.

(Herdado de Exception)
Source

Obtém o nome do provedor OLE DB que gerou o erro.

Source

Obtém ou define o nome do aplicativo ou objeto que causa o erro.

(Herdado de Exception)
SqlState

Para provedores de banco de dados compatíveis, contém um código de retorno SQL padrão de 5 caracteres que indica o êxito ou a falha da operação de banco de dados. Os dois primeiros caracteres representam a classe do código de retorno (por exemplo, erro ou êxito), enquanto os três últimos caracteres representam a subclasse, permitindo a detecção de cenários de erro em uma forma portátil de banco de dados.

Para provedores de banco de dados que não são compatíveis ou para cenários de erro inaplicáveis, contém null.

(Herdado de DbException)
StackTrace

Obtém uma representação de cadeia de caracteres de quadros imediatos na pilha de chamadas.

(Herdado de Exception)
TargetSite

Obtém o método que gerou a exceção atual.

(Herdado de Exception)

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetBaseException()

Quando substituído em uma classe derivada, retorna a Exception que é a causa raiz de uma ou mais exceções subsequentes.

(Herdado de Exception)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleto.

Este membro substitui GetObjectData(SerializationInfo, StreamingContext).

GetType()

Obtém o tipo de runtime da instância atual.

(Herdado de Exception)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que contém o HRESULT do erro.

(Herdado de ExternalException)

Eventos

SerializeObjectState
Obsoleto.

Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção.

(Herdado de Exception)

Aplica-se a

Confira também