我正在研究一个替换一张纸的项目,在那张纸上,基本上有两种文本字段。一个是10-40个字符,适用于varchar,但另一个是一个大盒子,在盒子的底部“必要时附加额外的纸张”。所以,我们谈的是很多文字。
我可以使用不同数据类型的优点和缺点是什么? Varchar似乎达到4096行大小限制。我应该使用文字类型吗?或者我应该把它自己分成几块并放在子表中?
目前是SQL Server 2005,但如果有令人信服的优势,我可以升级。
答案 0 :(得分:1)
在SQL Server 2005及更高版本中,您可以使用VARCHAR(MAX)(或NVARCHAR(MAX)作为unicode)。它们可以分别保存与TEXT和NTEXT一样多的数据,将来会被弃用。 VARCHAR(MAX)比TEXT更容易处理,并且与如何与它进行交互没有相同的限制。
毫无疑问,不要使用TEXT。对于那么多数据,VARCHAR(MAX)是更好的选择。
答案 1 :(得分:1)
使用SQL Server 2005及更高版本,我建议您使用VARCHAR(MAX)。
它的大小最多为2 GB,但你仍然可以在其上使用所有常用的T-SQL字符串函数。
马克
答案 2 :(得分:1)
使用VARCHAR(MAX)。这就是它的用途。甚至可能是NVARCHAR(MAX)。
答案 3 :(得分:1)
由于Microsoft plans to deprecate the text
, ntext
, and image
datatypes,我建议使用varchar类型,其大小限制为max
。
答案 4 :(得分:0)
有大量文字的[n]varchar(max)
(旧版[n]text
的替代品)。