Я понятия не имею, иду ли я вообще по этому правильному пути или иду на что-то совершенно глупое.
У меня есть файловая система, которая будет содержать кучу файлы изображений. Это большие изображения карты переменного размера. Я использую свою базу данных для выполнения пространственных запросов к ним.
В основном все, что я хочу сделать, это иметь возможность добавлять информацию об изображении (имя, каталог и пространственную информацию) в базу данных и удалять изображение из базы данных ( записей во всех таблицах вместе с внешним файлом, связанным с этой записью). Я знаю, как удалить все записи, но не внешние данные. Я не хочу вставлять изображения в базу данных в виде двоичного двоичного объекта, потому что я часто буду использовать внешние инструменты для файлов.
В основном моя база данных отслеживает только имя файла и каталог вместе с пространственными данными, связанными с файлом .
Как мне удалить файл из файловой системы, когда я удаляю запись из базы данных?
Я вообще правильно это делаю? Нормальнее ли вставлять изображение в базу данных в виде двоичного двоичного объекта? (Накладные расходы на копирование данных делают это для меня невероятным, и должен быть лучший способ.)
Я надеюсь, что это не имеет значения, но я использую postgre в качестве базы данных SQL под Linux.
РЕДАКТИРОВАТЬ: Моя текущая стратегия - использовать сценарий оболочки, который обрабатывает удаление изображения. Во время сценария оболочкион заставляет файл транзакции отбрасывать все записи базы данных, связанные с изображением, сохраняя при этом полный путь к файлу в виде простого текстового файла. Если транзакция прошла успешно, я удаляю изображение в плоском файле. Это разумно? Есть ли способ лучше?