【发布时间】:2010-05-11 06:56:37
【问题描述】:
我的 ASP.NET 应用程序中有一个文件上传器,使用 C#,我们可以上传任何类型,如图像、文档、pdf 等。
我将它存储在文件系统中,并且在数据库中只有文件名。 我的疑问是我们能否将整个文件、图像存储在数据库中。告诉我哪些是好的做法以及我们为什么需要使用它。
文件系统存储或 SQL DB 存储。
【问题讨论】:
标签: c# asp.net sql sql-server-2005
我的 ASP.NET 应用程序中有一个文件上传器,使用 C#,我们可以上传任何类型,如图像、文档、pdf 等。
我将它存储在文件系统中,并且在数据库中只有文件名。 我的疑问是我们能否将整个文件、图像存储在数据库中。告诉我哪些是好的做法以及我们为什么需要使用它。
文件系统存储或 SQL DB 存储。
【问题讨论】:
标签: c# asp.net sql sql-server-2005
这里提出了几乎相同的问题。检查答案:
这主要取决于文件的大小。这是一篇不错的文章。
对于小于 256kb 的文件,存储在数据库中 VarBinary 列的效率更高。
我们将文件存储在 MS SQL Server 中的 VarBinary 列中,限制为 256kb,它工作正常。
希望对您有所帮助。祝你好运!
【讨论】:
这是 argumentative 主观的,但我会说将文件存储在文件系统上更好。这就是文件系统的设计目的,SQL Server 2008 有一个new file type,允许您自动执行此操作,甚至使用事务。
【讨论】:
取决于:
简而言之,没有具体细节,很难给出最佳实践。就像任何任务一样,这取决于您的约束和要求。
【讨论】:
除了似乎专注于性能的其他答案之外,我还将访问权限添加为另一个问题。如果文件包含机密数据或需要审核对文件的访问权限,则有时将文件存储在数据库中会更容易管理。
【讨论】: