Partilhar via


SqlPipe Classe

Definição

Permite que procedimentos armazenados gerenciados em execução no processo em um banco de dados do SQL Server retornem resultados para o chamador. Essa classe não pode ser herdada.

public ref class SqlPipe sealed
public sealed class SqlPipe
type SqlPipe = class
Public NotInheritable Class SqlPipe
Herança
SqlPipe

Exemplos

O exemplo a seguir usa SqlConnection e SqlCommand para selecionar linhas de uma fonte de dados em um procedimento armazenado. Em seguida, o exemplo usa um SqlPipe para executar o comando e enviar os resultados de volta para o cliente.

[Microsoft.SqlServer.Server.SqlProcedure()]
public static void StoredProcExecuteCommand(int rating)
{
    // Connect through the context connection.
    using (SqlConnection connection = new SqlConnection("context connection=true"))
    {
        connection.Open();

        SqlCommand command = new SqlCommand(
            "SELECT VendorID, AccountNumber, Name FROM Purchasing.Vendor " +
            "WHERE CreditRating <= @rating", connection);
        command.Parameters.AddWithValue("@rating", rating);

        // Execute the command and send the results directly to the client.
        SqlContext.Pipe.ExecuteAndSend(command);
    }
}
<Microsoft.SqlServer.Server.SqlProcedure()> _
Public Shared Sub StoredProcExecuteCommand(ByVal rating As Integer)
    Dim command As SqlCommand

    ' Connect through the context connection
    Using connection As New SqlConnection("context connection=true")
        connection.Open()

        command = New SqlCommand( _
            "SELECT VendorID, AccountNumber, Name FROM Purchasing.Vendor " & _
            "WHERE CreditRating <= @rating", connection)
        command.Parameters.AddWithValue("@rating", rating)

        ' Execute the command and send the results directly to the client
        SqlContext.Pipe.ExecuteAndSend(command)
    End Using
End Sub

Comentários

Uma instância dessa classe é disponibilizada para procedimentos armazenados gerenciados por meio da Pipe propriedade da SqlContext classe .

Propriedades

IsSendingResults

Obtém um valor que indica se o SqlPipe está no modo de enviar conjuntos de resultados únicos de volta ao cliente. Esta propriedade é somente para leitura.

Métodos

ExecuteAndSend(SqlCommand)

Executa o comando passado como um parâmetro e envia os resultados para o cliente.

Send(SqlDataReader)

Envia um conjunto de resultados multilinha diretamente para o cliente ou para o consumidor de saída.

Send(SqlDataRecord)

Envia um conjunto de resultados de linha única diretamente ao cliente ou ao consumidor de saída atual.

Send(String)

Envia uma mensagem de cadeia de caracteres diretamente ao cliente ou ao consumidor de saída atual.

SendResultsEnd()

Marca o fim de um conjunto de resultados e retorna a instância SqlPipe de volta ao estado inicial.

SendResultsRow(SqlDataRecord)

Envia uma única linha de dados de volta ao cliente.

SendResultsStart(SqlDataRecord)

Marca o início de um conjunto de resultados a ser enviado de volta para o cliente e usa o parâmetro de registro para criar os metadados que descrevem o conjunto de resultados.

Aplica-se a