Partager via


SqlPipe.SendResultsEnd Méthode

Définition

Marque la fin d'un jeu de résultats et retourne l'instance de SqlPipe à son état initial.

public:
 void SendResultsEnd();
public void SendResultsEnd ();
member this.SendResultsEnd : unit -> unit
Public Sub SendResultsEnd ()

Exceptions

La méthode SendResultsStart(SqlDataRecord) n'a pas été appelée au préalable.

Exemples

L’exemple suivant crée un et SqlDataRecord son SqlMetaData. L’exemple marque ensuite le début d’un jeu de résultats à l’aide de la SendResultsStart méthode , renvoie les enregistrements avec des exemples de données au client à l’aide de la SendResultsRow méthode et marque la fin du jeu de résultats avec la SendResultsEnd méthode .

[Microsoft.SqlServer.Server.SqlProcedure]
public static void StoredProcReturnResultSet()
{
    // Create the record and specify the metadata for the columns.
    SqlDataRecord record = new SqlDataRecord(
        new SqlMetaData("col1", SqlDbType.NVarChar, 100),
        new SqlMetaData("col2", SqlDbType.Int));

    // Mark the begining of the result-set.
    SqlContext.Pipe.SendResultsStart(record);

    // Send 10 rows back to the client.
    for (int i = 0; i < 10; i++)
    {
        // Set values for each column in the row.
        record.SetString(0, "row " + i.ToString());
        record.SetInt32(1, i);

        // Send the row back to the client.
        SqlContext.Pipe.SendResultsRow(record);
    }

    // Mark the end of the result-set.
    SqlContext.Pipe.SendResultsEnd();
}
<Microsoft.SqlServer.Server.SqlProcedure()> _
Public Shared Sub StoredProcReturnResultSet()

    ' Create the record and specify the metadata for the columns.
    Dim record As New SqlDataRecord( _
        New SqlMetaData("col1", SqlDbType.NVarChar, 100), _
        New SqlMetaData("col2", SqlDbType.Int))

    ' Mark the begining of the result-set.
    SqlContext.Pipe.SendResultsStart(record)

    ' Send 10 rows back to the client.
    Dim i As Integer
    For i = 0 To 9

        ' Set values for each column in the row.
        record.SetString(0, "row " & i.ToString())
        record.SetInt32(1, i)

        ' Send the row back to the client.
        SqlContext.Pipe.SendResultsRow(record)
    Next

    ' Mark the end of the result-set.
    SqlContext.Pipe.SendResultsEnd()
End Sub

Remarques

Les procédures stockées managées peuvent envoyer des jeux de résultats aux clients qui n’implémentent pas de SqlDataReader. Cette méthode, ainsi SendResultsStart que et SendResultsRow, autorisent les procédures stockées à envoyer des jeux de résultats personnalisés au client.

S’applique à

Voir aussi