2009-10-08 68 views
0

我有2个外部资源的数据库项目:A.)图像和B.)HTML文件。将外部资源存储在数据库中?

这些应该作为列存储在数据库中,还是应该只保存指向文件系统的指针?

每种方法的优缺点是什么?

HTML文件每件约20万,和图像的每件约20万(5 - 10张,左右最大)

感谢。

+0

这是几个问题的重复。见http://stackoverflow.com/questions/3748/storing-images-in-db-yea-or-nay和http://stackoverflow.com/questions/8952/storing-a-file-in-a-database -as-对向的文件系统。 – 2009-10-08 20:31:16

回答

0

随着一切,“它取决于”。个人而言,如果您有充分的理由将它们存储在数据库中,我强烈考虑将它们作为image/ntext/varbinary(blob)列存储在数据库中。

我建议不要将路径存储到本地文件系统,因为这会使数据库移动到其他计算机上变得困难,因为存储在数据库中的路径很可能无效。

您可能想要调查SQL2008的FILESTREAM blob-column修饰符。有关该功能的简短摘要可在http://blogs.msdn.com/pedram/archive/2007/06/04/store-any-data-in-sql-server-2008-katmai.aspx和更多详细信息中找到,您可以在此处shake动:http://technet.microsoft.com/en-us/library/bb933993.aspx