| title | OLE DB Errors | |||||
|---|---|---|---|---|---|---|
| description | Learn about how errors are returned in the OLE DB Driver for SQL Server and how you can get information about them. | |||||
| author | David-Engel | |||||
| ms.author | davidengel | |||||
| ms.date | 05/06/2020 | |||||
| ms.service | sql | |||||
| ms.subservice | connectivity | |||||
| ms.topic | reference | |||||
| ms.custom |
|
|||||
| helpviewer_keywords |
|
[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics PDW FabricSQLDB]
[!INCLUDEDriver_OLEDB_Download]
OLE/COM objects report errors through the HRESULT return code of object member functions. An OLE/COM HRESULT is a bit-packed structure. OLE provides macros that dereference structure members.
OLE/COM specifies the IErrorInfo interface. The interface exposes methods such as GetDescription. This allows clients to extract error details from OLE/COM servers. OLE DB extends IErrorInfo to support the return of multiple error information packets on a single-member function execution.
[!INCLUDEssNoVersion] can return multiple errors. An application can retrieve server errors one at a time by calling IMultipleResults::GetResult combined with ISQLErrorInfo and IErrorRecords.
The OLE DB Driver for SQL Server exposes the OLE DB record-enhanced IErrorInfo, the custom ISQLErrorInfo, and the provider-specific ISQLServerErrorInfo error object interfaces.
For information about tracing errors, see Data Access Tracing. For information about enhancements to error tracing added in [!INCLUDEssSQL11], see Accessing Diagnostic Information in the Extended Events Log.