ISQLServerErrorInfo::GetErrorInfo (OLE DB)

Restituisce un puntatore a una struttura SSERRORINFO del provider OLE DB di SQL Server Native Client contenente i dettagli sugli errori di SQL Server.

Sintassi

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

Argomenti

  • ppSSErrorInfo[out]
    Puntatore a una struttura SSERRORINFO. Se il metodo non riesce o non sono disponibili informazioni SQL Server associate all'errore, il provider non alloca alcuna memoria e assicura che l'argomento ppSSErrorInfo sia un puntatore Null nell'output.

  • ppErrorStrings[out]
    Puntatore a un puntatore stringa carattere Unicode. Se il metodo non riesce o non sono disponibili informazioni di SQL Server associate a un errore, il provider non alloca alcuna memoria e assicura che l'argomento ppErrorStrings sia un puntatore Null nell'output. Liberando l'argomento ppErrorStrings con il metodo IMalloc::Free, vengono liberati i tre singoli membri della stringa della struttura SSERRORINFO restituita, in quanto la memoria viene allocata in un blocco.

Valori di codice restituiti

  • S_OK
    Il metodo è stato eseguito correttamente.

  • E_INVALIDARG
    L'argomento ppSSErrorInfo o ppErrorStrings era NULL.

  • E_OUTOFMEMORY
    Il provider OLE DB di SQL Server Native Client non è riuscito ad allocare una quantità di memoria sufficiente per completare la richiesta.

Osservazioni

Il provider OLE DB di SQL Server Native Client alloca memoria per le stringhe SSERRORINFO e OLECHAR restituite tramite i puntatori passati dal consumer. Il consumer deve deallocare questa memoria tramite il metodo IMalloc::Free quando l'accesso ai dati dell'errore non è più necessario.

La struttura SSERRORINFO viene definita nel modo seguente:

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

Membro

Descrizione

pwszMessage

Messaggio di errore di SQL Server. Il messaggio viene restituito attraverso il metodo IErrorInfo::GetDescription .

pwszServer

Nome dell'istanza di SQL Server in cui si è verificato l'errore.

pwszProcedure

Nome della stored procedure che genera l'errore se esso si è verificato all'interno della stessa, in caso contrario, una stringa vuota.

lNative

Numero di errore di SQL Server. Il numero di errore è identico a quello restituito nel parametro plNativeError del metodo ISQLErrorInfo::GetSQLInfo.

bState

Stato dell'errore di SQL Server.

bClass

Gravità dell'errore di SQL Server.

wLineNumber

Quando applicabile, riga di una stored procedure SQL Server che ha generato il messaggio di errore. Se non è coinvolta alcuna procedura, il valore predefinito è 1.

Puntatori negli indirizzi di riferimento della struttura nella stringa restituita nell'argomento ppErrorStrings.

Vedere anche

Riferimento

RAISERROR (Transact-SQL)

Altre risorse

ISQLServerErrorInfo (OLE DB)