对于 ASP.NET MVC Web 应用程序,将文本文件存储到 Sql Server 数据库中的最佳方法是什么?

发布于 2024-08-06 20:22:59 字数 166 浏览 1 评论 0原文

我正在制作一个小型的 asp.net mvc 应用程序。我必须计算来自几个的数据 CSV 文件(5 到 10 个文件)。

应用程序必须提供这些文件的上传和下载操作。

我没有经验的部分是数据库。我应该使用什么类型的色谱柱?文本、图像、二进制?文件的大小将在 80KB 到 500KB 之间

I'm making a small asp.net mvc app. in which I have to compute data from several
CSV files ( between 5 to 10 files).

The application must provide upload and download actions for these files.

The part where I don't have experience is the data base. What column type should I use? text, image, binary ? the size of a file will be betweent 80KB to 500KB

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

池予 2024-08-13 20:22:59

类型 TEXTNTEXTIMAGE 已过时 - 不要将它们用于新开发。它们将从未来的 SQL Server 版本中永久删除。

对于 SQL Server 2005 及更高版本,如果您处理纯文本文件(如源代码或 CSV 文件),请使用 VARCHAR(MAX) / NVARCHAR(MAX),或者使用 VARBINARY(MAX) 如果您正在处理二进制文件。

这些允许每个文件最多有 2 GB 的存储空间,并且您可以在它们上使用所有常用的 T-SQL 字符串函数来操作它们(即 (N)VARCHAR(MAX) 字段)。

如果您使用的是 SQL Server 2008,还有一个附加选项 - VARBINARY(MAX) 列上的 FILESTREAM 属性。这允许您将文件存储在 SQL Server 计算机的文件系统(而不是数据库表)中,同时保留事务和数据的完整性。

对于大小通常大于 1 MB 的文件,或者您需要超过 2 GB 的文件,建议使用 FILESTREAM(因为您无法在常规 VARBINARY(MAX) 栏)。

马克

The types TEXT, NTEXT and IMAGE are obsolete - do not use them for new development. They will be removed from a future SQL Server version for good.

For SQL Server 2005 and up, use VARCHAR(MAX) / NVARCHAR(MAX) if you're dealing with pure text files (like source code or CSV files), or VARBINARY(MAX) if you're dealing with binary files.

Those allow up to 2 GB of storage for each single file, and you can use all the usual T-SQL string functions on them to manipulate them (the (N)VARCHAR(MAX) fields, that is).

If you're using SQL Server 2008, there's also an additional option - the FILESTREAM attribute on VARBINARY(MAX) columns. This allows you to store the files in the SQL Server machine's file system (instead of the database tables) while preserving transactional and data integrity.

FILESTREAM is recommended for files that are typically and usually larger than 1 MB in size, or if you ever need more than 2 GB (since you can't store more than 2 GB in a regular VARBINARY(MAX) column).

Marc

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文