ISQLServerErrorInfo::GetErrorInfo (OLE DB)
Devuelve un puntero a una estructura SSERRORINFO del proveedor OLE DB de SQL Server Native Client que contiene los detalles de error de SQL Server.
Sintaxis
HRESULT GetErrorInfo(
SSERRORINFO**ppSSErrorInfo,
OLECHAR**ppErrorStrings);
Argumentos
ppSSErrorInfo[out]
Un puntero a una estructura SSERRORINFO. Si el método da error o no hay información de SQL Server asociada al error, el proveedor no asigna memoria y se asegura de que el argumento ppSSErrorInfo resulte en un puntero nulo.ppErrorStrings[out]
Un puntero a una cadena de caracteres Unicode. Si el método da error o no hay información de SQL Server asociada a un error, el proveedor no asigna memoria y se asegura de que el argumento ppErrorStrings resulte en un puntero nulo. Cuando se libera el argumento ppErrorStrings con el método IMalloc::Free, se liberan los tres miembros de cadena de la estructura SSERRORINFO devuelta, ya que la memoria se asigna en un bloque.
Valores de código de retorno
S_OK
El método se ejecutó correctamente.E_INVALIDARG
El argumento ppErrorStrings o ppSSErrorInfo fue NULL.E_OUTOFMEMORY
El proveedor OLE DB de SQL Server Native Client no pudo asignar la memoria suficiente para completar la solicitud.
Comentarios
El proveedor OLE DB de SQL Server Native Client asigna memoria para las cadenas SSERRORINFO y OLECHAR devueltas a través de los punteros pasados por el consumidor. El consumidor debe desasignar esta memoria utilizando el método IMalloc::Free cuando ya no requiera tener acceso a los datos de error.
La estructura SSERRORINFO se define como sigue:
typedef struct tagSSErrorInfo
{
LPOLESTR pwszMessage;
LPOLESTR pwszServer;
LPOLESTR pwszProcedure;
LONG lNative;
BYTE bState;
BYTE bClass;
WORD wLineNumber;
}
SSERRORINFO;
Miembro |
Descripción |
---|---|
pwszMessage |
El mensaje de error de SQL Server. El mensaje se devuelve a través del método IErrorInfo::GetDescription. |
pwszServer |
El nombre de la instancia de SQL Server en la que se ha producido el error. |
pwszProcedure |
El nombre del procedimiento almacenado que genera el error si éste se produjo en un procedimiento almacenado; de lo contrario, una cadena vacía. |
lNative |
El número de error de SQL Server. El número de error es idéntico al devuelto en el parámetro plNativeError del método ISQLErrorInfo::GetSQLInfo. |
bState |
El estado del error de SQL Server. |
bClass |
La gravedad del error de SQL Server. |
wLineNumber |
Cuando sea aplicable, la línea de un procedimiento almacenado de SQL Server que generó el mensaje de error. Si no hay implicado ningún procedimiento, se utiliza el valor predeterminado 1. |
Los punteros de las direcciones de referencia de la estructura en la cadena devuelta en el argumento ppErrorStrings.