Share via


OdbcException Kelas

Definisi

Pengecualian yang dihasilkan ketika peringatan atau kesalahan dikembalikan oleh sumber data ODBC. Kelas ini tidak dapat diwariskan.

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

Contoh

Contoh berikut menghasilkan OdbcException karena sumber data yang hilang, lalu menampilkan pengecualian.

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

Keterangan

Kelas ini dibuat setiap kali OdbcDataAdapter mengalami kesalahan yang dihasilkan oleh server (Kesalahan sisi klien dinaikkan sebagai pengecualian runtime bahasa umum standar.). Ini selalu berisi setidaknya satu instans OdbcError.

Jika tingkat keparahan kesalahan terlalu besar, server dapat menutup OdbcConnection. Namun, pengguna dapat membuka kembali koneksi dan melanjutkan.

Untuk informasi umum tentang menangani pengecualian untuk penyedia data .NET Framework, lihat SqlException.

Properti

BatchCommand

Jika ini DbException dilemparkan saat mengeksekusi , mereferensikan DbBatchspesifik DbBatchCommand yang memicu pengecualian.

(Diperoleh dari DbException)
Data

Mendapatkan kumpulan pasangan kunci/nilai yang memberikan informasi tambahan yang ditentukan pengguna tentang pengecualian.

(Diperoleh dari Exception)
DbBatchCommand

Ketika ditimpa di kelas turunan, jika ini DbException dilemparkan saat mengeksekusi , mereferensikan DbBatchspesifik DbBatchCommand yang memicu pengecualian.

(Diperoleh dari DbException)
ErrorCode

HRESULT Mendapatkan kesalahan.

(Diperoleh dari ExternalException)
Errors

Mendapatkan kumpulan satu atau beberapa OdbcError objek yang memberikan informasi terperinci tentang pengecualian yang dihasilkan oleh Penyedia Data .NET Framework untuk ODBC.

HelpLink

Mendapatkan atau mengatur tautan ke file bantuan yang terkait dengan pengecualian ini.

(Diperoleh dari Exception)
HResult

Mendapatkan atau mengatur HRESULT, nilai numerik berkode yang ditetapkan ke pengecualian tertentu.

(Diperoleh dari Exception)
InnerException

Mendapatkan instans Exception yang menyebabkan pengecualian saat ini.

(Diperoleh dari Exception)
IsTransient

Menunjukkan apakah kesalahan yang diwakili oleh ini DbException bisa menjadi kesalahan sementara, yaitu jika mencoba kembali operasi pemicu mungkin berhasil tanpa perubahan lain.

(Diperoleh dari DbException)
Message

Mendapatkan pesan yang menjelaskan pengecualian saat ini.

Message

Mendapatkan pesan yang menjelaskan pengecualian saat ini.

(Diperoleh dari Exception)
Source

Mendapatkan nama driver ODBC yang menghasilkan kesalahan.

SqlState

Untuk penyedia database yang mendukungnya, berisi kode pengembalian karakter SQL 5 standar yang menunjukkan keberhasilan atau kegagalan operasi database. 2 karakter pertama mewakili kelas kode pengembalian (misalnya kesalahan, keberhasilan), sementara 3 karakter terakhir mewakili subkelas, memungkinkan deteksi skenario kesalahan dengan cara portabel database.

Untuk penyedia database yang tidak mendukungnya, atau untuk skenario kesalahan yang tidak dapat diaplikasikan, berisi null.

(Diperoleh dari DbException)
StackTrace

Mendapatkan representasi string dari bingkai langsung pada tumpukan panggilan.

(Diperoleh dari Exception)
TargetSite

Mendapatkan metode yang melemparkan pengecualian saat ini.

(Diperoleh dari Exception)

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetBaseException()

Ketika ditimpa di kelas turunan Exception , mengembalikan yang merupakan akar penyebab dari satu atau beberapa pengecualian berikutnya.

(Diperoleh dari Exception)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

Anggota ini mengambil GetObjectData(SerializationInfo, StreamingContext)alih .

GetType()

Mendapatkan jenis runtime dari instans saat ini.

(Diperoleh dari Exception)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang berisi HRESULT kesalahan.

(Diperoleh dari ExternalException)
ToString()

Membuat dan mengembalikan representasi string dari pengecualian saat ini.

(Diperoleh dari Exception)

Acara

SerializeObjectState
Kedaluwarsa.

Terjadi ketika pengecualian diserialisasikan untuk membuat objek status pengecualian yang berisi data berseri tentang pengecualian.

(Diperoleh dari Exception)

Berlaku untuk

Lihat juga