SqlPipe Kelas

Definisi

Memungkinkan prosedur tersimpan terkelola yang berjalan dalam proses pada database SQL Server untuk mengembalikan hasil kembali ke pemanggil. Kelas ini tidak dapat diwariskan.

public ref class SqlPipe sealed
public sealed class SqlPipe
type SqlPipe = class
Public NotInheritable Class SqlPipe
Warisan
SqlPipe

Contoh

Contoh berikut menggunakan SqlConnection dan SqlCommand untuk memilih baris dari sumber data dalam prosedur tersimpan. Contoh kemudian menggunakan SqlPipe untuk menjalankan perintah dan mengirim hasilnya kembali ke klien.

[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

Keterangan

Instans kelas ini tersedia untuk prosedur tersimpan SqlContext terkelola melalui Pipe properti kelas .

Properti

IsSendingResults

Mendapatkan nilai yang menunjukkan apakah SqlPipe berada dalam mode pengiriman satu tataan hasil kembali ke klien. Properti ini bersifat hanya baca.

Metode

ExecuteAndSend(SqlCommand)

Menjalankan perintah yang diteruskan sebagai parameter dan mengirim hasilnya ke klien.

Send(SqlDataReader)

Mengirim hasil multirow yang diatur langsung ke klien atau konsumen output saat ini.

Send(SqlDataRecord)

Mengirim hasil baris tunggal yang diatur langsung ke klien atau konsumen output saat ini.

Send(String)

Mengirim pesan string langsung ke klien atau konsumen output saat ini.

SendResultsEnd()

Menandai akhir kumpulan hasil, dan mengembalikan instans SqlPipe kembali ke status awal.

SendResultsRow(SqlDataRecord)

Mengirim satu baris data kembali ke klien.

SendResultsStart(SqlDataRecord)

Menandai awal kumpulan hasil yang akan dikirim kembali ke klien, dan menggunakan parameter catatan untuk membuat metadata yang menjelaskan kumpulan hasil.

Berlaku untuk