1

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

谁能帮我给我一个提示或想法或解决方法,因为我真的迷失了这个?

4

2 回答 2

1

将过时的类型 NTEXT 替换为更合适的 NVARCHAR(MAX) 并使用 UPDATE SET 列。编写语法,请参阅使用大值数据类型

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

于 2010-01-11T03:32:06.623 回答
1

nvarchar(max) 不会截断。

您在某处有一个中间 nvarchar(4000) (或更短),通常是一个字符串常量。有关更多信息,请参阅我的答案:对于 Nvarchar(Max),我在 TSQL 中只得到 4000 个字符?

如果您可以转换为 nvarchar(max),那么这意味着您也可以更改列...正如 Remus 所说,不推荐使用 ntext。

于 2010-01-11T04:02:42.280 回答