Share via


リターン コード (ネイティブ クライアント OLE DB プロバイダー)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

最も基本的なレベルでは、メンバー関数は成功するか失敗するかのどちらかです。 それよりもやや詳細なレベルでは、関数は成功しても、その成功はアプリケーション開発者が意図した状態ではない場合があります。

OLE DB のリターン コードの詳細については、「リターン コード (OLE DB)」を参照してください。

SQL SERVER NATIVE CLIENT OLE DB プロバイダーメンバー関数がS_OKを返すと、関数は成功しました。

SQL SERVER NATIVE CLIENT OLE DB プロバイダー メンバー関数がS_OKを返さない場合、OLE/COM HRESULT-unpacking FAILED マクロと IS_ERROR マクロは、関数の全体的な成功または失敗を判断できます。

FAILED または IS_ERROR が TRUE を返した場合、SQL SERVER NATIVE CLIENT OLE DB プロバイダー コンシューマーはメンバー関数の実行に失敗したことを保証します。 FAILED または IS_ERRORが FALSE を返し、HRESULT がS_OKと等しくない場合、SQL SERVER NATIVE CLIENT OLE DB プロバイダー コンシューマーは、ある意味で関数が成功したことを保証します。 コンシューマーは、SQL Server Native Client OLE DB プロバイダー のエラー インターフェイスから、この "成功と情報" の戻り値に関する詳細情報を取得できます。 また、関数が明確に失敗した場合 (FAILED マクロは TRUE を返します)、OLE DB プロバイダーのエラー インターフェイスSQL Server Native Clientから拡張エラー情報を取得できます。

OLE DB プロバイダー コンシューマー SQL Server Native Client、一般的に HRESULT が返すDB_S_ERRORSOCCURRED "success with information" が発生します。 通常、DB_S_ERRORSOCCURRED を返すメンバー関数では、コンシューマーに状態値を提供するパラメーターが 1 つ以上定義されています。 コンシューマーは状態値パラメーターに返される情報以外のエラー情報を取得できない場合があるので、状態値が提供された場合にこの値を取得できるアプリケーション ロジックを実装することをお勧めします。

OLE DB プロバイダーメンバー関数SQL Server Native Clientは、成功コード S_FALSEを返しません。 OLE DB プロバイダーのすべてのSQL Server Native Clientメンバー関数は、常に成功を示すためにS_OKを返します。

参照

エラー