Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitik Platform Sistemi (PDW)
Microsoft Fabric'te SQL veritabanı
OLE DB sürücüsünü indirme
SQL Server için OLE DB Sürücüsü, sağlayıcıya özgü hata arayüzünü ISQLServerErrorInfo tanımlar. Arayüz, SQL Server hatası hakkında daha fazla detay verir ve komut çalıştırma veya sıra seti işlemleri başarısız olduğunda değerlidir.
ISQLServerErrorInfo arayüzüne erişmenin iki yolu vardır.
Tüketici, aşağıdaki kod örneğinde gösterildiği gibi ISQLServerErrorInfo işaretçisi elde etmek için IErrorRecords::GetCustomerErrorObject adresini çağırabilir. ( ISQLErrorInfo edinmenize gerek yoktur.) Hem ISQLErrorInfo hem de ISQLServerErrorInfo özel OLE veritabanı hata nesneleridir; ISQLServerErrorInfo sunucu hataları bilgisini elde etmek için kullanılan arayüzdür; prosedür adı ve satır numaraları gibi detaylar dahil.
// Get the SQL Server custom error object.
if(FAILED(hr=pIErrorRecords->GetCustomErrorObject(
nRec, IID_ISQLServerErrorInfo,
(IUnknown**)&pISQLServerErrorErrorInfo)))
ISQLServerErrorInfo işaretçisi elde etmenin bir diğer yolu, zaten elde edilen bir ISQLErrorInfo işaretçisinde QueryInterface metodunu çağırmaktır. ISQLServerErrorInfo, ISQLErrorInfo'dan elde edilen bilgilerin bir üst kümesini içerdiğinden, doğrudan GetCustomerErrorObject üzerinden ISQLServerErrorInfo'ya gitmenin mantıklı olduğunu unutmayın.
ISQLServerErrorInfo arayüzü, ISQLServerErrorInfo::GetErrorInfo adlı tek bir üye fonksiyonunu ortaya çıkarır. Fonksiyon, bir işaretçiyi bir SSERRORINFO yapısına ve bir işaretçiyi bir dizi tamponuna döndürür. Her iki işaretçi de tüketicinin IMalloc::Free yöntemiyle dağıtması gereken belleğe referans verir.
SSERRORINFO yapı üyeleri tüketici tarafından aşağıdaki şekilde yorumlanır.
| Üye | Description |
|---|---|
| pwszMesaj | SQL Server hata mesajı. IErrorInfo::GetDescription içindeki dize ile aynı. |
| pwszServer | Oturum için SQL Server örneğinin adı. |
| pwszProsedür | Uygunsa, hatanın ortaya çıktığı prosedürün adı. Aksi takdirde boş bir ip. |
| Yerli | SQL Server yerel hata numarası. ISQLErrorInfo::GetSQLInfo'nunplNativeError parametresinde döndürülen değerle aynıdır. |
| bState | SQL Server hata mesajının durumu. |
| bSınıf | SQL Server hata mesajının ciddiyeti. |
| wLineNumber | Uygulanabilirse, hatanın gerçekleştiği depolanmış prosedürün satır numarası. |