Pelajaran 6: Menerima Balasan dan Mengakhiri Percakapan

Berlaku untuk: SQL Server (semua versi yang didukung) Azure SQL Managed Instance

Dalam pelajaran ini, Anda akan belajar menerima pesan balasan dari layanan target dan mengakhiri percakapan. Buka SQL Server Management Studio (SSMS) dan sambungkan ke SQL Server yang memiliki inisiator Service Broker. Kemudian jalankan langkah-langkah ini dari jendela kueri di SSMS.

Prosedur

Beralih ke database InitiatorDB

  • Salin dan tempel kode berikut ke dalam jendela Editor Kueri. Kemudian, jalankan untuk mengalihkan konteks kembali ke database InstInitiatorDB tempat Anda akan menerima pesan balasan dan mengakhiri percakapan.

        USE InstInitiatorDB;
        GO
    

Menerima balasan dan mengakhiri percakapan

  • Salin dan tempel kode berikut ke dalam jendela Editor Kueri. Kemudian, jalankan untuk menerima pesan balasan dan akhiri percakapan. Pernyataan RECEIVE mengambil pesan balasan dari InstInitiatorQueue. Pernyataan END CONVERSATION mengakhiri sisi inisiator percakapan. Pernyataan SELECT terakhir menampilkan teks pesan balasan sehingga Anda dapat mengonfirmasinya sama dengan apa yang dikirim di langkah terakhir.

        DECLARE @RecvReplyMsg NVARCHAR(100);
        DECLARE @RecvReplyDlgHandle UNIQUEIDENTIFIER;
    
        BEGIN TRANSACTION;
    
        WAITFOR
        ( RECEIVE TOP(1)
            @RecvReplyDlgHandle = conversation_handle,
            @RecvReplyMsg = message_body
          FROM InstInitiatorQueue
        ), TIMEOUT 1000;
    
        END CONVERSATION @RecvReplyDlgHandle;
    
        -- Display recieved request.
        SELECT @RecvReplyMsg AS ReceivedReplyMsg;
    
        COMMIT TRANSACTION;
        GO
    

Langkah berikutnya

Ini menyimpulkan tutorial. Tutorial hanya pengenalan singkat. Mereka tidak menjelaskan semua opsi yang tersedia. Tutorial menggunakan logika yang disederhanakan dan penanganan kesalahan, dan tidak boleh digunakan di lingkungan produksi. Untuk membuat percakapan yang efisien, andal, dan kuat, Anda memerlukan kode yang lebih kompleks daripada contoh dalam tutorial ini.

Lihat juga