ISQLServerErrorInfo::GetErrorInfo (OLE DB)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Devuelve un puntero a una estructura SSERRORINFO de OLE DB Driver for SQL Server que contiene los detalles del error SQL Server.
OLE DB Driver for SQL Server define la interfaz de errores ISQLServerErrorInfo. Esta interfaz devuelve los detalles de un error de SQL Server, incluso la gravedad y el estado.
Sintaxis
HRESULT GetErrorInfo(
SSERRORINFO**ppSSErrorInfo,
OLECHAR**ppErrorStrings);
Argumentos
ppSSErrorInfo[out]
Un puntero a una estructura SSERRORINFO. Si el método produce un 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 dé como resultado un puntero nulo.
ppErrorStrings[out]
Un puntero a una cadena de caracteres Unicode. Si el método produce un 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 dé como resultado 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 ha llevado a cabo de forma correcta.
E_INVALIDARG
El argumento ppSSErrorInfo o ppErrorStrings era NULL.
E_OUTOFMEMORY
OLE DB Driver for SQL Server no pudo asignar memoria suficiente para completar la solicitud.
Observaciones
El controlador OLE DB para SQL Server 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 mediante 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;
Member | 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.