これは、この種の機能の正当化であるため、質問に対する答えではありません。したがって、「何か他のことをする必要がある」または「なぜしたいのか」と言う人を否定します。
私は厳格なルールを守ろうとしているデータベースを持っています-私はどこにも孤児を望んでいません。参照整合性チェックは、テーブルレベルでこれを行うのに役立ちますが、データの一部をファイルシステム内のファイルとして保持する必要があります(これは、データベース自体にバイナリデータを保存しないように上司から直接注文された結果です)。
ここでの明らかな解決策は、レコードの削除時に起動するトリガーを設定することです。これにより、関連する外部ファイルが自動的に削除されます。
今、私はUDFが解決策を提供するかもしれないことを理解していますが、それは単にファイルを削除するための多くのC /C++作業のようです。確かに、データベースのアクセス許可自体は、少なくともいくつかを提供します 加害者になる可能性のある人からのセキュリティ。
これで、テーブルレコードを削除してから関連ファイルを削除できるシェルスクリプトなどを記述できることに気付きましたが、これもデータベースのドメイン外です 。昔のインストラクターがかつて私に言ったように、「ビジネスのルールはデータベースのルールに反映されるべきです」。はっきりとわかるように、MySQLを使用してこれを強制することはできません。