Partager via


ISQLServerErrorInfo::GetErrorInfo (OLE DB)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Télécharger le pilote OLE DB

Retourne un pointeur vers une structure SSERRORINFO OLE DB Driver pour SQL Server qui contient les détails de l'erreur SQL Server.

OLE DB Driver pour SQL Server définit l'interface d'erreur ISQLServerErrorInfo. Cette interface retourne les détails d’une erreur SQL Server, notamment sa gravité et son état.

Syntaxe

  
HRESULT GetErrorInfo(  
   SSERRORINFO**ppSSErrorInfo,  
   OLECHAR**ppErrorStrings);  

Arguments

ppSSErrorInfo[out]
Pointeur vers une structure SSERRORINFO. Si la méthode échoue ou qu’il n’existe pas d’informations SQL Server associées à l’erreur, le fournisseur n’alloue pas de mémoire et vérifie que l’argument ppSSErrorInfo est un pointeur null en sortie.

ppErrorStrings[out]
Pointeur vers un pointeur de chaîne de caractère Unicode. Si la méthode échoue ou qu’il n’existe pas d’informations SQL Server associées à l’erreur, le fournisseur n’alloue pas de mémoire et vérifie que l’argument ppErrorStrings est un pointeur null en sortie. La libération de l’argument ppErrorStrings avec la méthode IMalloc::Free libère les trois membres de type chaîne individuels de la structure SSERRORINFO retournée, la mémoire étant allouée dans un bloc.

Codet de retour

S_OK
S_OK

E_INVALIDARG
L'argument ppSSErrorInfo ou ppErrorStrings était NULL.

E_OUTOFMEMORY
OLE DB Driver pour SQL Server n'a pas pu allouer une mémoire suffisante pour compléter la requête.

Notes

Le pilote OLE DB pour SQL Server alloue de la mémoire pour les chaînes SSERRORINFO et OLECHAR retournées via les pointeurs passés par le consommateur. Le consommateur doit désallouer cette mémoire avec la méthode IMalloc::Free quand il n’est plus nécessaire d’accéder aux données d’erreur.

La structure SSERRORINFO est définie comme suit :

typedef struct tagSSErrorInfo  
   {  
   LPOLESTR pwszMessage;  
   LPOLESTR pwszServer;  
   LPOLESTR pwszProcedure;  
   LONG lNative;  
   BYTE bState;  
   BYTE bClass;  
   WORD wLineNumber;  
   }  
SSERRORINFO;  
Membre Description
pwszMessage Message d'erreur de SQL Server. Le message est retourné via la méthode IErrorInfo::GetDescription.
pwszServer Nom de l'instance SQL Server sur laquelle l'erreur s'est produite.
pwszProcedure Le nom de la procédure stockée qui génère l'erreur si l'erreur s'est produite dans une procédure stockée ; sinon, une chaîne vide.
lNative Numéro d'erreur SQL Server. Le numéro d’erreur est identique à celui retourné dans le paramètre plNativeError de la méthode ISQLErrorInfo::GetSQLInfo.
bState État de l'erreur SQL Server.
bClass Gravité de l'erreur SQL Server.
wLineNumber Le cas échéant, la ligne d'une procédure stockée SQL Server qui a généré le message d'erreur. Si aucune procédure n'est impliquée, la valeur par défaut est 1.

Pointeurs dans les adresses de type référence de la structure de la chaîne retournée dans l’argument ppErrorStrings.

Voir aussi

RAISERROR (Transact-SQL)