我在ntext中有一个列,它包含长度超过4000个字符的大型unicode字符串。我需要更新/修改sql中列的行的数据,但我不知道如何做到这一点。我曾尝试使用nvarchar(max)作为缓冲区,但它会将数据截断为4000个字符。
有人能给我一个提示,一个想法或一个变通的解决方案,因为我真的迷失在这个解决方案中了吗?
发布于 2010-01-11 12:02:42
nvarchar(max)不截断。
在某个地方有一个中间的nvarchar(4000) (或更短),通常是一个字符串常量。查看我的答案了解更多信息:For Nvarchar(Max) I am only getting 4000 characters in TSQL?
如果您可以强制转换为nvarchar(max),那么这意味着您也可以更改列...正如Remus所说,ntext已弃用。
发布于 2010-01-11 11:32:07
请参见Using Large-Value Data Types,将过时的NTEXT类型替换为更合适的NVARCHAR(MAX),并使用UPDATE SET column.Write语法。
旧的NTEXT类型支持UPDATETEXT,但现在已过时。
https://stackoverflow.com/questions/2039676
复制相似问题