¿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?