修改ntext列的值

时间:2010-01-11 02:57:50

标签: sql sql-server tsql ntext

我在ntext中有一个列,它包含长度超过4000个字符的大型unicode字符串。我需要更新/修改sql中列的行的数据,但我不知道如何这样做。我已经尝试将nvarchar(max)作为缓冲区,但它将数据截断为4000个字符。

任何人都可以帮我提一个提示或想法或一个解决方案,因为我真的迷失了这个吗?

2 个答案:

答案 0 :(得分:1)

将过时类型NTEXT替换为更合适的NVARCHAR(MAX)并使用UPDATE SET列。编写语法,请参阅Using Large-Value Data Types

旧类型NTEXT支持UPDATETEXT,但现在已经过时了。

答案 1 :(得分:1)

nvarchar(max)不会截断。

某处有一个中间nvarchar(4000)(或更短),通常是一个字符串常量。有关详细信息,请参阅我的回答:For Nvarchar(Max) I am only getting 4000 characters in TSQL?

如果你可以强制转换为nvarchar(max),那么这意味着你也可以改变你的列......正如Remus所说,ntext已被弃用。