srv_senddone (拡張ストアド プロシージャ API)
適用対象: SQL サーバー
重要
この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに CLR 統合を使用してください。
結果完了メッセージをクライアントに送信します。
構文
int srv_senddone (
SRV_PROC *
srvproc
,
DBUSMALLINT
status
,
DBUSMALLINT
info
,
DBINT
count
);
引数
srvproc
特定のクライアント接続のためのハンドル (この場合は、言語要求を受け取るハンドル) である SRV_PROC 構造体を指すポインターです。 この構造体には、アプリケーションとクライアントの間の通信やデータを管理するために、拡張ストアド プロシージャ API ライブラリで使用する情報が格納されます。
status
各種の status フラグに使用する 2 バイトのフィールドです。 status フラグの値に AND 論理演算子や OR 論理演算子を使用することにより、複数のフラグを設定できます。 次の表は、使用可能な status フラグを示しています。
status フラグ | 説明 |
---|---|
SRV_DONE_COUNT | count パラメーターに有効なカウントを格納します。 |
SRV_DONE_ERROR | 現在のクライアント コマンドがエラーを受け取ったことを示します。 |
info
2 バイトの予約フィールドです。 この値は 0 に設定します。
count
現在の結果セットに対するカウントを示す 4 バイト フィールドです。 status フィールドに SRV_DONE_COUNT フラグを設定した場合、count には有効なカウントが格納されます。
返品
SUCCEED または FAIL を返します。
解説
サーバーは 1 つのクライアント要求から、複数のコマンドを実行して複数の結果セットを返すことができます。 srv_senddone は、各結果セットに対して結果完了メッセージをクライアントに返す必要があります。
count フィールドは、コマンドの影響を受ける行数を示します。 count フィールドにカウントが格納されている場合は、status フィールドに SRV_DONE_COUNT フラグを設定する必要があります。 この設定により、count の値が 0 かどうか、count フィールドが使用されていないのかをクライアントが区別できるようになります。
srv_senddone を SRV_CONNECT ハンドラーから呼び出さないでください。
重要
拡張ストアド プロシージャのソース コードを十分に確認し、コンパイル済み DLL を、運用サーバーにインストールする前にテストする必要があります。 セキュリティの確認およびテストについて詳しくは、Microsoft の Web サイトをご覧ください。