Ini bukan jawaban untuk pertanyaan tersebut karena ini merupakan pembenaran untuk fungsi semacam ini - karenanya meniadakan mereka yang akan mengatakan "Anda harus melakukan sesuatu yang lain" atau "mengapa Anda ingin".
Saya memiliki database yang saya coba pertahankan aturan ketatnya - saya tidak ingin anak yatim piatu di mana pun. Pemeriksaan integritas referensial membantu saya dengan ini di tingkat tabel, tetapi saya harus menyimpan beberapa data sebagai file di dalam sistem file (ini adalah hasil dari perintah langsung dari bos saya untuk tidak menyimpan data biner apa pun di database itu sendiri).
Solusi yang jelas di sini adalah memiliki pemicu yang diaktifkan saat penghapusan catatan, yang kemudian secara otomatis menghapus file eksternal terkait.
Sekarang, saya menyadari bahwa UDF dapat memberikan solusi, tetapi sepertinya banyak C/C++ yang berfungsi hanya untuk menghapus file. Tentunya izin basis data itu sendiri akan memberikan setidaknya beberapa keamanan dari calon penyerang.
Sekarang, saya menyadari bahwa saya dapat menulis skrip shell atau semacamnya yang dapat menghapus catatan tabel dan kemudian menghapus file terkait, tetapi sekali lagi, itu di luar domain database itu sendiri . Sebagai instruktur lama pernah mengatakan kepada saya "aturan bisnis harus tercermin dalam aturan database". Seperti yang dapat dilihat dengan jelas, saya tidak dapat menerapkan ini menggunakan MySQL.