次の方法で共有


SqlPipe.Send メソッド

定義

結果を直接クライアントまたは現在の出力のコンシューマーに送信します。

オーバーロード

Send(SqlDataRecord)

単一行の結果セットを直接クライアントまたは現在の出力のコンシューマーに送信します。

Send(SqlDataReader)

複数行の結果セットを直接クライアントまたは現在の出力のコンシューマーに送信します。

Send(String)

文字列メッセージを直接クライアントまたは現在の出力のコンシューマーに送信します。

注釈

Send メソッドは、クライアントまたは呼び出し元に直接データを送信します。 通常は Pipe メソッドからの出力を使用するクライアントですが、入れ子になった CLR ストアド プロシージャの場合は、出力コンシューマーもストアド プロシージャにすることができます。 たとえば、Procedure1 はコマンド テキスト "EXEC Procedure2" を使用して を呼び出します ExecuteReader 。 Procedure2 もマネージド ストアド プロシージャです。 Procedure2 が を呼び出す Sendようになった場合、行はクライアントではなく Procedure1 のリーダーに送信されます。

Send(SqlDataRecord)

単一行の結果セットを直接クライアントまたは現在の出力のコンシューマーに送信します。

public:
 void Send(Microsoft::SqlServer::Server::SqlDataRecord ^ record);
public void Send (Microsoft.SqlServer.Server.SqlDataRecord record);
member this.Send : Microsoft.SqlServer.Server.SqlDataRecord -> unit
Public Sub Send (record As SqlDataRecord)

パラメーター

record
SqlDataRecord

クライアントに送信する単一行の結果セット (SqlDataRecord オブジェクト)。

例外

recordnull です。

適用対象

Send(SqlDataReader)

複数行の結果セットを直接クライアントまたは現在の出力のコンシューマーに送信します。

public:
 void Send(System::Data::SqlClient::SqlDataReader ^ reader);
public void Send (System.Data.SqlClient.SqlDataReader reader);
member this.Send : System.Data.SqlClient.SqlDataReader -> unit
Public Sub Send (reader As SqlDataReader)

パラメーター

reader
SqlDataReader

クライアントに送信する複数行の結果セット (SqlDataReader オブジェクト)。

例外

readernull です。

注釈

パラメーターとして渡されたオブジェクトに SqlDataReader 非表示の列がある場合、それらの列はクライアントに送信された結果セットに反映されません。

適用対象

Send(String)

文字列メッセージを直接クライアントまたは現在の出力のコンシューマーに送信します。

public:
 void Send(System::String ^ message);
public void Send (string message);
member this.Send : string -> unit
Public Sub Send (message As String)

パラメーター

message
String

クライアントに送信されるメッセージ文字列。

例外

message が 4,000 文字を超えています。

messagenull です。

次の例では、 メソッドを Send 使用して、メッセージ文字列をクライアントに直接送信します。

[Microsoft.SqlServer.Server.SqlProcedure]
public static void StoredProcSendMessage()
{
    // Send a message string back to the client.
    SqlContext.Pipe.Send("Hello World!");
}
<Microsoft.SqlServer.Server.SqlProcedure()> _
Public Shared Sub StoredProcSendMessage()

    ' Send a message string back to the client.
    SqlContext.Pipe.Send("Hello world!")

End Sub

注釈

メッセージ文字列は、情報メッセージとしてクライアントに送信されます。 クライアント アプリケーションは、使用するデータ アクセス アプリケーション プログラミング インターフェイス (API) に応じて、さまざまなメカニズムを使用してメッセージをリッスンできます。 たとえば、クライアントが ADO.NET を使用している場合、メッセージは イベントを InfoMessage 介して送信されます。

適用対象