Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Возвращает указатель на структуру OLE DB поставщика OLE DB собственного клиента SQL Server, содержащую сведения об ошибке SQL Server.
Синтаксис
HRESULT GetErrorInfo(
SSERRORINFO**ppSSErrorInfo,
OLECHAR**ppErrorStrings);
Аргументы
ppSSErrorInfo[out]
Указатель на структуру SSERRORINFO. Если метод завершается ошибкой или нет сведений SQL Server, связанных с ошибкой, поставщик не выделяет память и гарантирует, что аргумент ppSSErrorInfo является пустым указателем на выходные данные.
ppErrorStrings[out]
Указатель на указатель строки символов Юникода. Если метод завершается ошибкой или нет сведений SQL Server, связанных с ошибкой, поставщик не выделяет память и гарантирует, что аргумент ppErrorStrings является пустым указателем на выходные данные. Освобождение аргумента ppErrorStrings с помощью метода IMalloc::Free освобождает три отдельных элемента строки возвращаемой структуры SSERRORINFO, так как память выделяется в блоке.
Значения кода возврата
S_OK
Метод выполнен успешно.
E_INVALIDARG
Аргумент ppSSErrorInfo или ppErrorStrings был NULL.
E_OUTOFMEMORY (Ошибка: Недостаточно памяти)
Поставщик OLE DB собственного клиента SQL Server не мог выделить достаточно памяти для выполнения запроса.
Замечания
Поставщик OLE DB собственного клиента SQL Server выделяет память для строк SSERRORINFO и OLECHAR, возвращаемых через указатели, передаваемые потребителем. Потребитель должен освободить эту память с помощью метода IMalloc::Free , если он больше не требует доступа к данным об ошибках.
Структура SSERRORINFO определяется следующим образом:
typedef struct tagSSErrorInfo
{
LPOLESTR pwszMessage;
LPOLESTR pwszServer;
LPOLESTR pwszProcedure;
LONG lNative;
BYTE bState;
BYTE bClass;
WORD wLineNumber;
}
SSERRORINFO;
| Член | Описание |
|---|---|
| pwszMessage | Сообщение об ошибке из SQL Server. Сообщение возвращается с помощью метода IErrorInfo::GetDescription . |
| pwszServer | Имя экземпляра SQL Server, на котором произошла ошибка. |
| pwszProcedure | Имя хранимой процедуры, создающей ошибку, если ошибка произошла в хранимой процедуре; в противном случае пустая строка. |
| lNative | Номер ошибки SQL Server. Номер ошибки идентичен значению, возвращаемого в параметре plNativeError метода ISQLErrorInfo::GetSQLInfo . |
| bState | Состояние ошибки SQL Server. |
| bClass | Серьезность ошибки SQL Server. |
| wLineNumber | Если применимо, строка хранимой процедуры SQL Server, создающая сообщение об ошибке. Если процедура не используется, значение по умолчанию равно 1. |
Указатели в ссылочных адресах структуры в строке, возвращаемой в аргументе ppErrorStrings .