SqlPipe.Send 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将结果直接发送到客户端或当前输出使用者。
重载
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 对象。
例外
record
为 null
。
适用于
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 对象。
例外
reader
为 null
。
注解
如果作为参数传入的对象 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个字符。
message
为 null
。
示例
以下示例使用 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 事件传输。