OdbcException Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Исключение, которое генерируется в тех случаях, когда источником данных ODBC возвращается предупреждение или ошибка. Этот класс не наследуется.
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
- Наследование
- Наследование
- Атрибуты
Примеры
В следующем примере создается OdbcException из-за отсутствия источника данных, а затем отображается исключение.
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
Комментарии
Этот класс создается всякий OdbcDataAdapter раз, когда возникает ошибка, созданная сервером (ошибки на стороне клиента создаются как стандартные исключения среды CLR). Он всегда содержит по крайней OdbcErrorмере один экземпляр .
В случае серьезной ошибки сервер может закрыть объект OdbcConnection. Тем не менее, пользователь может опять открыть подключение и продолжить работу.
Общие сведения об обработке исключений для поставщика данных платформа .NET Framework см. в разделе SqlException.
Свойства
BatchCommand |
Если это DbException было вызвано при выполнении , ссылается на конкретный DbBatchDbBatchCommand объект, который вызвал исключение. (Унаследовано от DbException) |
Data |
Возвращает коллекцию пар «ключ-значение», предоставляющую дополнительные сведения об исключении. (Унаследовано от Exception) |
DbBatchCommand |
При переопределении в производном классе, если это DbException было вызвано при выполнении DbBatch, ссылается на конкретный DbBatchCommand , который вызвал исключение. (Унаследовано от DbException) |
ErrorCode |
Возвращает |
Errors |
Получает коллекцию из одного или нескольких объектов OdbcError, которые предоставляют подробные сведения об исключениях, выдаваемых поставщиком данных .NET Framework для ODBC. |
HelpLink |
Получает или задает ссылку на файл справки, связанный с этим исключением. (Унаследовано от Exception) |
HResult |
Возвращает или задает HRESULT — кодированное числовое значение, присвоенное определенному исключению. (Унаследовано от Exception) |
InnerException |
Возвращает экземпляр класса Exception, который вызвал текущее исключение. (Унаследовано от Exception) |
IsTransient |
Указывает, может ли ошибка, представленная этим экземпляром DbException, быть временной ошибкой, т. е. может ли повторная попытка активировать операцию быть выполнена без других изменений. (Унаследовано от DbException) |
Message |
Возвращает сообщение, описывающее текущее исключение. |
Message |
Возвращает сообщение, описывающее текущее исключение. (Унаследовано от Exception) |
Source |
Получает имя драйвера ODBC, который сгенерировал ошибку. |
SqlState |
Для поставщиков баз данных с поддержкой содержит стандартный код возврата SQL, состоящий из пяти символов и указывающий на успешность выполнения операции с базой данных. Первые два символа представляют класс кода возврата (например, ошибка или успешное выполнение), а последние три символа — подкласс. Это позволяет обнаруживать сценарии ошибок с применением подхода с поддержкой переноса баз данных. Для поставщиков баз данных без поддержки или неприменимых сценариев ошибок содержит |
StackTrace |
Получает строковое представление непосредственных кадров в стеке вызова. (Унаследовано от Exception) |
TargetSite |
Возвращает метод, создавший текущее исключение. (Унаследовано от Exception) |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetBaseException() |
При переопределении в производном классе возвращает исключение Exception, которое является первопричиной одного или нескольких последующих исключений. (Унаследовано от Exception) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Устаревшие..
Этот элемент переопределяет метод GetObjectData(SerializationInfo, StreamingContext). |
GetType() |
Возвращает тип среды выполнения текущего экземпляра. (Унаследовано от Exception) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, содержащую значение HRESULT ошибки. (Унаследовано от ExternalException) |
ToString() |
Создает и возвращает строковое представление текущего исключения. (Унаследовано от Exception) |
События
SerializeObjectState |
Устаревшие..
Возникает, когда исключение сериализовано для создания объекта состояния исключения, содержащего сериализованные данные об исключении. (Унаследовано от Exception) |