SQL Server hata ayrıntı
SQL ServerYerel istemci ole db sağlayıcısı sağlayıcıya özgü hata arabirimi tanımlayan ISQLServerErrorInfo. Arabirimi hakkında daha fazla ayrıntı verir bir SQL Serverhata değerli zaman komut yürütme ve satır kümesi işlemleri başarısız.
Erişim elde etmek için iki yol vardır ISQLServerErrorInfo arabirimi.
Tüketici çağırabilir IErrorRecords::GetCustomerErrorObjectISQLServerErrorInfo elde etmek için bir ISQLServerErrorInfo işaretçisi, aşağıdaki kod örneğinde gösterildiği gibi. (Elde etmek için gerek yok ISQLErrorInfo.) Hem ISQLErrorInfo ve ISQLServerErrorInfo özel ole db error nesnesi ile olan ISQLServerErrorInfo yordam adı ve satır numaraları gibi bilgileri de dahil olmak üzere, sunucu hata bilgilerini elde etmek için kullanılacak arabirimin olmak.
// Get the SQL Server custom error object.
if(FAILED(hr=pIErrorRecords->GetCustomErrorObject(
nRec, IID_ISQLServerErrorInfo,
(IUnknown**)&pISQLServerErrorErrorInfo)))
// Get the SQL Server custom error object.
if(FAILED(hr=pIErrorRecords->GetCustomErrorObject(
nRec, IID_ISQLServerErrorInfo,
(IUnknown**)&pISQLServerErrorErrorInfo)))
Başka yol-e doğru almak bir ISQLServerErrorInfo işaretçidir aramak için QueryInterface yöntemi bir zaten-elde ISQLErrorInfo işaretçisi. Çünkü dikkat ISQLServerErrorInfo bir üst kümesidir mevcut bilgileri içeren ISQLErrorInfo, doğrudan gitmek için mantıklı ISQLServerErrorInfo ile GetCustomerErrorObject.
ISQLServerErrorInfo arabirimi açar bir üye işlev, ISQLServerErrorInfo::GetErrorInfo. İşlev bir SSERRORINFO yapısı ve bir dizge tamponu işaretçisi bir işaretçi döndürür. Tüketici kullanarak ayırması gereken bellek hem işaretçiler başvuru IMalloc::Free yöntemi.
Yapı üyeleri SSERRORINFO tüketici tarafından aşağıdaki gibi yorumlanır.
Üye |
Açıklama |
---|---|
pwszMessage |
SQL Serverhata iletisi. Döndürülen dize aynı IErrorInfo::GetDescription. |
pwszServer |
Örnek adı SQL Serveroturumu için. |
pwszProcedure |
Uygunsa, hatanın kaynaklandığı yordamın adı. Aksi takdirde boş dize. |
lNative |
SQL ServerYerel hata numarası. Döndürülen değerle aynı plNativeError parametresi ISQLErrorInfo::GetSQLInfo. |
bState |
Devlet bir SQL Serverhata mesajı. |
bSınıf |
Şiddeti bir SQL Serverhata mesajı. |
wLineNumber |
Uygun olduğunda, hata oluştuğu saklı bir yordam satır sayısı. |