Compartir a través de


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.

Vea también

Referencia

RAISERROR (Transact-SQL)

Otros recursos

ISQLServerErrorInfo (OLE DB)