Partager via


ISQLServerErrorInfo ::GetErrorInfo (OLE DB)

Retourne un pointeur vers une structure SSERRORINFO du fournisseur OLE DB SQL Server Native Client contenant les détails de l’erreur SQL Server.

Syntaxe

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

Les arguments

ppSSErrorInfo[out]
Pointeur vers une structure SSERRORINFO. Si la méthode échoue ou qu’aucune information SQL Server n’est associée à l’erreur, le fournisseur n’alloue aucune mémoire et garantit que l’argument ppSSErrorInfo est un pointeur Null en sortie.

ppErrorStrings[out]
Pointeur vers un pointeur de chaîne de caractères Unicode. Si la méthode échoue ou qu’aucune information SQL Server n’est associée à une erreur, le fournisseur n’alloue pas de mémoire et garantit 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 chaîne individuels de la structure SSERRORINFO retournée, car la mémoire est allouée dans un bloc.

Codet de retour

S_OK
S_OK

E_INVALIDARG
L’argument ppSSErrorInfo ou ppErrorStrings a été NULL.

E_OUTOFMEMORY
Le fournisseur OLE DB SQL Server Native Client n’a pas pu allouer suffisamment de mémoire pour terminer la requête.

Remarques

Le fournisseur OLE DB SQL Server Native Client alloue de la mémoire pour les chaînes SSERRORINFO et OLECHAR retournées par le biais des pointeurs passés par le consommateur. Le consommateur doit libérer cette mémoire à l’aide de la méthode IMalloc ::Free lorsqu’il n’a plus besoin 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 Descriptif
pwszMessage Message d’erreur de SQL Server. Le message est retourné via la méthode IErrorInfo ::GetDescription .
pwszServer Nom de l’instance de SQL Server sur laquelle l’erreur s’est produite.
pwszProcedure Nom de la procédure stockée générant 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 référence de structure dans la chaîne retournée dans l’argument ppErrorStrings .

Voir aussi

ISQLServerErrorInfo (OLE DB)
RAISERROR (Transact-SQL)