我正在制作一个小型的 asp.net mvc 应用程序。我必须计算来自几个的数据 CSV 文件(5 到 10 个文件)。
应用程序必须提供这些文件的上传和下载操作。
我没有经验的部分是数据库。我应该使用什么类型的色谱柱?文本、图像、二进制?文件大小将在 80KB 到 500KB 之间
最佳答案
类型 TEXT
、NTEXT
和 IMAGE
已过时 - 不要将它们用于新开发。它们将从 future 的 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) 中存储超过 2 GB 的文件)
列)。
马克
关于sql-server - 对于 ASP.NET MVC Web 应用程序,将文本文件存储到 Sql Server 数据库中的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1516569/