1

在 SQL Server (2005) 中存储适量文本的最佳数据类型是什么?

例如,想象一个表格,存储有关网站上可用下载的信息。我想要一个简短的下载标题,比如 varchar(20)。一条路径,比如 varchar(255) 然后我想存储一些关于下载的用户友好文本 - 描述。在某些情况下,它可能与标题一样短,而在其他情况下,您可能需要几段解释。

什么是最好的?大小为 4000 的 varchar,还是 varchar(max) 或其他?

4

3 回答 3

4

程序描述的 PAD(便携式应用程序描述)规范最高字符限制为 2000 个字符 *请参阅程序描述部分。

http://www.asp-shareware.org/pad/spec/spec.php

下载站点提交工具使用此规范使作者更容易提交他们的软件。此外,我认为您可以下载几个遵循 PAD 规范的列表。

所以我会建议 varchar(2000) 基于我不想存储超过我需要的事实。使用 varchar(max) 记录一条记录就可以了,但是当您拥有数千个存储成本时,存储成本可能会上升。

编辑: varchar(max) 可以是 2GB - 1,这就是我要限制它的原因。 http://msdn.microsoft.com/en-us/library/ms176089(SQL.90).aspx

于 2008-10-15T05:26:02.643 回答
2

使用 varchar(max),您可以在其中放置一个巨大的文本,并且它的存储大小会根据需要增加。您可以在 varchar(max) 上拥有 sql 组函数,例如,group by。或者如果在 SQL 中查找全文搜索,您可以选择文本数据类型

于 2008-10-15T05:20:36.913 回答
0

大小应取决于所存储数据的大小。不要将 varchar (max) 用于只有 2 个字符的状态字段。我通常会查看我期望获得的最大值,然后在确定大小时添加 10-20% 的软糖因子。如果您需要存储 unicode 字符,请不要忘记使用 nvarchar。

于 2008-10-15T16:25:38.040 回答