使用SQL数据库跟踪外部文件,并在删除记录时删除外部文件
||
我不知道我是否正在按照正确的方式进行操作,或者我正在完全愚蠢地进行操作。
我有一个文件系统,它将容纳一堆图像文件。这些是可变大小的大地图图像。我正在使用数据库对它们进行空间查询。
基本上,我要做的就是能够将图像的信息(名称,目录和空间信息)添加到数据库中,并从数据库中删除图像(所有表中的记录以及与此相关的外部文件)记录)。我知道如何删除所有记录,但不删除外部数据。我不想将图像作为二进制Blob插入数据库,因为我经常在文件上使用外部工具。
基本上,我的数据库仅跟踪文件的名称和目录以及与文件关联的空间数据。
从数据库库中删除记录时,如何从文件系统中删除文件?
我什至正在正确地做这件事?将图像作为二进制Blob插入数据库是否更正常? (复制数据的开销使我难以置信,因此必须有更好的方法。)
我希望这是无关紧要的,但是我将postgre用作Linux下的SQL数据库。
编辑:我当前的策略是使用处理图像删除的shell脚本。在shell脚本期间,它使事务文件删除与该映像关联的所有数据库记录,同时将文件的完整路径保存为纯文本文件。如果交易成功,则删除平面文件中的图像。这明智吗?有没有更好的办法?
没有找到相关结果
已邀请:
4 个回复
bab
杀死多个条目,然后您的管理员将随后来清理剩余的图像。
甲车劲
烷刨画颠离
枫湃揩乾纲