我已阅读过来自不同论坛的Are there any disadvantages to always using nvarchar(MAX)和varchar(max) vs varchar(255)。现在,我想知道将text
数据类型转换为nvarchar(MAX)
是否理想/安全做法?有没有性能差异?或者我是否需要指定大小(如nvarchar(255)
)而不是nvarchar(max)
?
答案 0 :(得分:4)
答案非常简单:不推荐使用text
类型。所以,是的,您应该将text
数据类型转换为varchar(MAX)
。
https://msdn.microsoft.com/en-AU/library/ms187993.aspx
将来的版本中将删除ntext,text和image数据类型 Microsoft SQL Server。避免在新的中使用这些数据类型 开发工作,并计划修改当前使用的应用程序 他们。请改用nvarchar(max),varchar(max)和varbinary(max)。
最重要的是,如果您知道text
的尺寸小于8000,则使用varchar(nnn)
代替varchar(max)
。 varchar(nnn)
比varchar(max)
效率更高。
注意:text
类型适用于非unicode文本,因此请改用varchar
。 ntext
用于unicode文字,因此请改用nvarchar
。