【发布时间】:2012-01-23 00:12:43
【问题描述】:
我必须在网站上显示图像,我可以将图像存储在我网站的文件夹中,也可以将图像存储在 SQL Server 的图像列中。 那么哪种存储图像的方式更好:在 SQL Server 的文件夹或图像列中。 1. 哪种存储和检索图像的方式更快
【问题讨论】:
-
您也可以像在 SQL Server 2008 上一样考虑
FileStream。它将图像存储在文件系统上,但与数据库集成以进行备份等。
我必须在网站上显示图像,我可以将图像存储在我网站的文件夹中,也可以将图像存储在 SQL Server 的图像列中。 那么哪种存储图像的方式更好:在 SQL Server 的文件夹或图像列中。 1. 哪种存储和检索图像的方式更快
【问题讨论】:
FileStream。它将图像存储在文件系统上,但与数据库集成以进行备份等。
使用 SQL Server 2008,虽然您可以存储 BLOB 数据,但最好避免使用它。我过去曾不情愿地这样做过,它确实对性能产生了负面影响。除非您有一些阻止它的约束,否则请使用文件系统。它就是为此而构建的,而且速度要快得多。
【讨论】:
正如@Martin Smith 指出的那样,您可以使用 FileStream。我们开始使用 FileStream 存储我们的文件,以便我们还可以添加全文索引,并允许用户不仅可以搜索数据,还可以搜索我们网站上的文件。这也很好,因为我们可以轻松地将文件与数据库一起移动到其他环境(开发、测试)。
不错的文件流文章:Here
另外,如果您要存储在数据库中,请使用 varbinary(max)。 image 列将在未来的版本中被弃用。
--S
【讨论】: