Pemicu adalah persyaratan untuk aturan integritas data yang kompleks. Ini tidak dapat diberlakukan di mana pun kecuali database atau Anda akan memiliki masalah integritas data.
Mereka juga merupakan tempat terbaik untuk audit kecuali Anda tidak ingin menangkap semua perubahan pada database (yang merupakan masalah audit dari aplikasi).
Pemicu dapat menyebabkan masalah kinerja jika tidak ditulis dengan hati-hati dan tidak cukup banyak pengembang yang memiliki pengetahuan untuk menulisnya dengan baik. Ini adalah bagian dari tempat mereka mendapatkan rap buruk.
Pemicu sering kali lebih lambat daripada cara lain untuk menjaga integritas data, jadi jika Anda dapat menggunakan batasan pemeriksaan, gunakan itu alih-alih pemicu.
Sangat mudah untuk menulis pemicu buruk yang melakukan hal-hal bodoh seperti mencoba mengirim email. Apakah Anda benar-benar ingin tidak dapat mengubah catatan di db jika server email turun?
Di SQL server, pemicu beroperasi pada kumpulan catatan. Terlalu sering pengembang berpikir mereka hanya perlu menangani satu catatan sisipan, pembaruan atau penghapusan. Itu bukan satu-satunya jenis perubahan data yang terjadi pada basis data dan semua pemicu harus diuji dalam kondisi 1 perubahan catatan dan banyak perubahan catatan. Lupa melakukan tes kedua dapat menyebabkan pemicu yang berkinerja sangat buruk atau hilangnya integritas data.