Pemberitahuan kueri di SQL Server

Dibangun pada infrastruktur Service Broker, pemberitahuan kueri memungkinkan aplikasi diberi tahu ketika data telah berubah. Fitur ini sangat berguna untuk aplikasi yang menyediakan cache informasi dari database, seperti aplikasi Web, dan perlu diberi tahu saat data sumber diubah.

Ada tiga cara Anda dapat menerapkan pemberitahuan kueri menggunakan ADO.NET:

  1. Implementasi tingkat rendah disediakan oleh kelas SqlNotificationRequest yang memperlihatkan fungsionalitas sisi server, sehingga memungkinkan Anda untuk menjalankan perintah dengan permintaan pemberitahuan.

  2. Implementasi tingkat tinggi disediakan oleh kelas SqlDependency, yang merupakan kelas yang menyediakan abstraksi tingkat tinggi fungsionalitas pemberitahuan antara aplikasi sumber dan SQL Server, memungkinkan Anda menggunakan ketergantungan untuk mendeteksi perubahan di server. Dalam kebanyakan kasus, ini adalah cara paling sederhana dan paling efektif untuk memanfaatkan kemampuan pemberitahuan SQL Server oleh aplikasi klien terkelola menggunakan .NET Framework Data Provider untuk SQL Server.

  3. Selain itu, aplikasi Web yang dibangun menggunakan ASP.NET 2.0 atau yang lebih baru dapat menggunakan SqlCacheDependency kelas pembantu.

Notifikasi kueri digunakan untuk aplikasi yang perlu menyegarkan tampilan atau cache sebagai respons terhadap perubahan pada data yang mendasarinya. Microsoft SQL Server memungkinkan aplikasi .NET Framework untuk mengirim perintah ke SQL Server dan meminta pemberitahuan jika menjalankan perintah yang sama dan akan menghasilkan kumpulan hasil yang berbeda dari yang awalnya diambil. Notifikasi yang dihasilkan di server dikirim melalui antrean untuk diproses nanti.

Anda dapat mengatur pemberitahuan untuk pernyataan SELECT dan EXECUTE. Saat menggunakan pernyataan EXECUTE, SQL Server mendaftarkan pemberitahuan untuk perintah yang dieksekusi daripada pernyataan EXECUTE itu sendiri. Perintah harus memenuhi persyaratan dan batasan untuk pernyataan SELECT. Ketika perintah yang mendaftarkan pemberitahuan berisi lebih dari satu pernyataan, Mesin Database membuat pemberitahuan untuk setiap pernyataan dalam batch.

Jika Anda mengembangkan aplikasi yang memerlukan pemberitahuan sub-detik yang andal saat data berubah, tinjau bagian Merencanakan Strategi Pemberitahuan Kueri yang Efisien dan Alternatif untuk Pemberitahuan Kueri di Perencanaan untuk artikel Notifikasi. Untuk informasi selengkapnya tentang pemberitahuan kueri dan SQL Server Service Broker, lihat tautan berikut ke artikel di dokumentasi SQL Server.

Dokumentasi SQL Server

Di Bagian Ini

Mengaktifkan Pemberitahuan Kueri
Membahas cara menggunakan pemberitahuan kueri, termasuk persyaratan untuk mengaktifkan dan menggunakannya.

SqlDependency dalam Aplikasi ASP.NET
Mendemonstrasikan cara menggunakan pemberitahuan kueri dari aplikasi ASP.NET.

Mendeteksi Perubahan dengan SqlDependency
Mendemonstrasikan cara mendeteksi ketika hasil kueri akan berbeda dari yang awalnya diterima.

Eksekusi SqlCommand dengan SqlNotificationRequest
Mendemonstrasikan upaya mengonfigurasi objek SqlCommand agar berfungsi dengan pemberitahuan kueri.

Referensi

SqlNotificationRequest
Menjelaskan kelas SqlNotificationRequest dan semua anggotanya.

SqlDependency
Menjelaskan kelas SqlDependency dan semua anggotanya.

SqlCacheDependency
Menjelaskan kelas SqlCacheDependency dan semua anggotanya.

Lihat juga