ISQLServerErrorInfo::GetErrorInfo (Penyedia OLE DB Klien Asli)
Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)
Penting
SQL Server Native Client (sering disingkat SNAC) telah dihapus dari SQL Server 2022 (16.x) dan SQL Server Management Studio 19 (SSMS). Penyedia SQL Server Native Client OLE DB (SQLNCLI atau SQLNCLI11) dan Penyedia Microsoft OLE DB warisan untuk SQL Server (SQLOLEDB) tidak direkomendasikan untuk pengembangan baru. Beralih ke Microsoft OLE DB Driver (MSOLEDBSQL) baru untuk SQL Server ke depannya.
Mengembalikan pointer ke penyedia SQL Server Native Client OLE DB struktur SSERRORINFO yang berisi detail kesalahan SQL Server.
Penyedia SQL Server Native Client OLE DB menentukan antarmuka kesalahan ISQLServerErrorInfo . Antarmuka ini mengembalikan detail dari kesalahan SQL Server, termasuk tingkat keparahan dan statusnya.
Sintaks
HRESULT GetErrorInfo(
SSERRORINFO**ppSSErrorInfo,
OLECHAR**ppErrorStrings);
Argumen
ppSSErrorInfo[out]
Penunjuk ke struktur SSERRORINFO. Jika metode gagal atau tidak ada informasi SQL Server yang terkait dengan kesalahan, penyedia tidak mengalokasikan memori apa pun, dan memastikan bahwa argumen ppSSErrorInfo adalah pointer null pada output.
ppErrorStrings[out]
Penunjuk ke penunjuk string karakter Unicode. Jika metode gagal atau tidak ada informasi SQL Server yang terkait dengan kesalahan, penyedia tidak mengalokasikan memori apa pun, dan memastikan bahwa argumen ppErrorStrings adalah pointer null pada output. Membebaskan argumen ppErrorStrings dengan metode IMalloc::Free membebaskan tiga anggota string individual dari struktur SSERRORINFO yang dikembalikan, karena memori dialokasikan dalam blok.
Mengembalikan Nilai Kode
S_OK
Metode berhasil.
E_INVALIDARG
Argumen ppSSErrorInfo atau ppErrorStrings adalah NULL.
E_OUTOFMEMORY
Penyedia SQL Server Native Client OLE DB tidak dapat mengalokasikan memori yang cukup untuk menyelesaikan permintaan.
Keterangan
Penyedia SQL Server Native Client OLE DB mengalokasikan memori untuk string SSERRORINFO dan OLECHAR yang dikembalikan melalui pointer yang diteruskan oleh konsumen. Konsumen harus membatalkan alokasi memori ini dengan menggunakan metode IMalloc::Free ketika tidak lagi memerlukan akses ke data kesalahan.
Struktur SSERRORINFO didefinisikan sebagai berikut:
typedef struct tagSSErrorInfo
{
LPOLESTR pwszMessage;
LPOLESTR pwszServer;
LPOLESTR pwszProcedure;
LONG lNative;
BYTE bState;
BYTE bClass;
WORD wLineNumber;
}
SSERRORINFO;
Anggota | Deskripsi |
---|---|
pwszMessage | Pesan kesalahan dari SQL Server. Pesan dikembalikan melalui metode IErrorInfo::GetDescription . |
pwszServer | Nama instans SQL Server tempat kesalahan terjadi. |
pwszProcedure | Nama prosedur tersimpan yang menghasilkan kesalahan jika kesalahan terjadi dalam prosedur tersimpan; jika tidak, string kosong. |
lNative | Nomor kesalahan SQL Server. Nomor kesalahan identik dengan yang dikembalikan dalam parameter plNativeError dari metode ISQLErrorInfo::GetSQLInfo . |
bState | Status kesalahan SQL Server. |
bClass | Tingkat keparahan kesalahan SQL Server. |
wLineNumber | Jika berlaku, baris prosedur tersimpan SQL Server yang menghasilkan pesan kesalahan. Jika tidak ada prosedur yang terlibat, nilai defaultnya adalah 1. |
Penunjuk dalam alamat referensi struktur dalam string yang dikembalikan dalam argumen ppErrorStrings .
Lihat Juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk