Freigeben über


'ISQLServerErrorInfo::GetErrorInfo' (OLE DB)

Gibt einen Zeiger auf eine SSERRORINFO-Struktur des SQL Server Native Client OLE DB-Anbieters zurück, die die SQL Server-Fehlerdetails enthält.

Syntax

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

Argumente

  • ppSSErrorInfo[out]
    Ein Zeiger auf eine SSERRORINFO-Struktur. Wenn die Methode fehlschlägt oder dem Fehler keine SQL Server-Informationen zugeordnet sind, teilt der Anbieter keinen Speicher zu und stellt sicher, dass das ppSSErrorInfo-Argument bei der Ausgabe ein NULL-Zeiger ist.

  • ppErrorStrings[out]
    Ein Zeiger auf einen Unicode-Zeichenfolgenzeiger. Wenn die Methode fehlschlägt oder einem Fehler keine SQL Server-Informationen zugeordnet sind, teilt der Anbieter keinen Speicher zu und stellt sicher, dass das ppErrorStrings-Argument bei der Ausgabe ein NULL-Zeiger ist. Durch die Freigabe des ppErrorStrings-Arguments mit der IMalloc::Free-Methode werden die drei einzelnen Zeichenfolgenelemente der zurückgegebenen SSERRORINFO-Struktur freigegeben, da der Speicher in einem Block zugeteilt wird.

Rückgabecodewerte

  • S_OK
    Die Methode wurde erfolgreich ausgeführt.

  • E_INVALIDARG
    Entweder das ppSSErrorInfo-Argument oder das ppErrorStrings-Argument war NULL.

  • E_OUTOFMEMORY
    Der SQL Server Native Client OLE DB-Anbieter konnte nicht genügend Arbeitsspeicher zuteilen, um die Anforderung zu erfüllen.

Hinweise

Der SQL Server Native Client OLE DB-Anbieter teilt Arbeitsspeicher für die SSERRORINFO- und die OLECHAR-Zeichenfolgen zu, die durch die Zeiger zurückgegeben werden, die vom Consumer übergeben werden. Der Consumer muss diesen Arbeitsspeicher mithilfe der IMalloc::Free-Methode freigeben, wenn er keinen Zugriff auf die Fehlerdaten mehr benötigt.

Die SSERRORINFO-Struktur ist folgendermaßen definiert:

typedef struct tagSSErrorInfo
   {
   LPOLESTR pwszMessage;
   LPOLESTR pwszServer;
   LPOLESTR pwszProcedure;
   LONG lNative;
   BYTE bState;
   BYTE bClass;
   WORD wLineNumber;
   }
SSERRORINFO;

Element

Beschreibung

pwszMessage

Die Fehlermeldung aus SQL Server. Die Meldung wird durch die IErrorInfo::GetDescription -Methode zurückgegeben.

pwszServer

Der Name der Instanz von SQL Server, auf der der Fehler aufgetreten ist

pwszProcedure

Der Name der gespeicherten Prozedur, die den Fehler generiert, wenn der Fehler in einer gespeicherten Prozedur aufgetreten ist; anderenfalls ist es eine leere Zeichenfolge.

lNative

Die SQL Server-Fehlernummer. Die Fehlernummer ist mit der im plNativeError-Parameter der ISQLErrorInfo::GetSQLInfo-Methode zurückgegebenen identisch.

bState

Der Zustand des SQL Server-Fehlers.

bClass

Der Schweregrad des SQL Server-Fehlers.

wLineNumber

Das ist gegebenenfalls die Zeile einer gespeicherten SQL Server-Prozedur, die die Fehlermeldung generiert hat. Wenn keine Prozedur betroffen ist, lautet der Standardwert 1.

Zeiger auf die Strukturverweisadressen in der Zeichenfolge, die im ppErrorStrings-Argument zurückgegeben wird

Siehe auch

Verweis

Andere Ressourcen