大家好,我有一个照片库,我问自己是否应该为图库创建一个数据库,或者保持简单[Folder / imagename]并从中获取信息。
<小时/><小时/> 这是我已经掌握的信息 http://sdrv.ms/13rhc6c
答案 0 :(得分:0)
这实际上取决于你想做什么。如果您正在构建一个简单的本地图像浏览器而不需要交互/元信息,那么只需扫描文件系统。
如果这是一个共享图库,并且您希望能够命名,描述,分类等......那么您绝对需要一个数据库。
另一件需要考虑的事情是,用户是否会上传这些图片?您打算如何备份它们?您是否可以轻松访问服务器的文件系统?如果您需要代码和库非常便携且易于备份,我建议将数据存储在blob列中的数据库中。
我这样做的方法是有三张桌子。
为什么要分开blob和数据?因为你的blob表可以非常快地变得非常大,并且为了性能和可维护性,它可以帮你省去它的头痛。
为什么要从blob /数据表中分离URL?因为您可以为同一图像创建多个URL,而无需复制图像数据。
为什么要使用MD5而不仅仅是ID?因此,您可以阻止存储重复图像,并且可以将现有元信息与已知MD5的新图像进行匹配。您不必担心MD5冲突。
关于所有这些的实际SQL,您需要先尝试执行此操作,然后在遇到问题时再询问具体问题。我们不是来编写你的代码:) SQL不是很难学,只是花一些时间玩它。