¿Cómo borrar archivos cuando se borra un registro?

Tengo una mesa

CREATE TABLE photo (
    photo_id BIGINT NOT NULL AUTO_INCREMENT,
    property_id BIGINT NOT NULL,
    filename VARCHAR (50) NOT NULL;
    ...
    PRIMARY KEY (photo_id),
    CONSTRAINT photo_fk_property FOREIGN KEY (property_id)
        REFERENCES property (property_id)
        ON DELETE CASCADE
);

Cuando se elimina una fila de esta tabla, el archivo al que hace referencia también debe eliminarse. Hay dos escenarios cuando los registros se eliminan de esta tabla:

El usuario borra una foto en particular.El usuario elimina un objeto de propiedad particular (como en "propiedad inmobiliaria"), y todas las fotos que hacen referencia a esa propiedad se eliminan automáticamente alON DELETE CASCADE.

Sé que puedo seleccionar todas las fotos a las que se hace referencia en la base de datos antes de eliminar una propiedad y eliminarlas junto con sus archivos uno por uno, pero estoy buscando una solución alternativa. ¿Es posible captar el momento en que un registro en elphoto la tabla se borra y borra el archivo automáticamente, sin renunciar a laCASCADE cláusula, tal vez en un gatillo de alguna manera?

Respuestas a la pregunta(1)

Su respuesta a la pregunta