解决方法
个人意见:我总是将图像存储在文件系统上,并且只在数据库中存储文件路径.在许多情况下,数据库存储在快速(读取:昂贵的存储,15k RPM或SSD驱动器)存储上.图像或其他文件通常可以存储在较慢(读取:更便宜,更大的驱动器,7.2k RPM驱动器)存储上.
我发现这是最好的,因为它允许数据库保持较小的尺寸.通常,数据库很好地存储“数据”.他们可以快速搜索和检索少量数据.文件系统很好地存储“文件”,它们经过优化,可以快速查找和检索更大的数据.
显然,这两种方法都存在权衡,并且不会出现一刀切的情况;但是,可能存在一些使用情况,在数据库中存储图像是一件好事,如果它们都非常小,并且您没有预期很多,并且您的数据库与文件共享位于同一存储介质上那么将图像直接放入数据库可能是有意义的.
作为旁注,sql Server 2008R2有一个FileStream字段类型,可以提供两全其美,我还没有使用它,所以我不能说它的工作情况.