Коды возврата

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)

Скачать драйвер OLE DB

В принципе можно сказать, что вызов функции-члена завершается успешно либо с ошибкой. Точнее, вызов функции может оказаться успешным, но результат может быть отличным от того, на какой рассчитывал разработчик приложения.

Дополнительные сведения о кодах возврата OLE DB см. в статье Коды возврата (OLE DB).

Если функция-член OLE DB Driver for SQL Server возвращает S_OK, значит выполнение функции завершилось успешно.

Если функция-член драйвера OLE DB для SQL Server возвращает не S_OK, с помощью макросов OLE/COM FAILED и IS_ERROR можно получить из возвращенного функцией значения HRESULT информацию об успешном или неуспешном выполнении функции.

Если макрос FAILED или IS_ERROR вернул значение TRUE, это служит сигналом для драйвера OLE DB для SQL Server, что выполнение функции было неуспешным. Если FAILED или IS_ERROR имеет значение FALSE, а HRESULT не равно S_OK, значит OLE DB Driver for SQL Server извещает потребителя о частично успешном выполнении функции. Потребитель может получить подробные сведения об этом "успехе с оговорками" через интерфейсы для работы с ошибками, предоставляемые драйвером OLE DB для SQL Server. Через эти же интерфейсы драйвера OLE DB для SQL Server можно получить подробные сведения в случае, когда вызов функции был явно неудачным (макрос FAILED возвращает значение TRUE).

Среди разных вариантов "успеха с оговорками" потребители OLE DB Driver for SQL Server чаще всего получают в параметре HRESULT значение DB_S_ERRORSOCCURRED. Функции-члены, возвращающие значение DB_S_ERRORSOCCURRED, обычно определяют один или несколько параметров, предоставляющих потребителю значения состояния. Информация, возвращаемая через параметры состояния, может быть единственной информацией о состоянии, доступной потребителю; поэтому для получения значений состояния, когда они доступны, потребители должны реализовать собственную логику приложения.

Функции-члены OLE DB Driver for SQL Server не возвращают код успеха S_FALSE. Все функции-члены OLE DB Driver for SQL Server обозначают успешное выполнение только кодом успеха S_OK.

См. также:

ошибки