Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 修改ntext列的值_Sql_Sql Server_Tsql_Ntext - Fatal编程技术网

Sql 修改ntext列的值

Sql 修改ntext列的值,sql,sql-server,tsql,ntext,Sql,Sql Server,Tsql,Ntext,我在ntext中有一列,其中包含长度超过4000个字符的大型unicode字符串。我需要在sql中更新/修改列的行的数据,但我不知道如何做。我曾尝试使用nvarchar(max)作为缓冲区,但它将数据截断为4000个字符 谁能帮我给我一个提示、一个想法或一个解决方案,因为我真的迷失在这一点上了?用更合适的NVARCHAR(MAX)替换过时的类型NTEXT,并使用更新集列。编写语法,请参阅 旧类型的NTEXT支持,但现在已过时。nvarchar(max)不会截断 您在某处有一个中间nvarchar

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


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

用更合适的NVARCHAR(MAX)替换过时的类型NTEXT,并使用更新集列。编写语法,请参阅

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

nvarchar(max)不会截断

您在某处有一个中间nvarchar(4000)(或更短),通常是一个字符串常量。有关更多信息,请参见我的答案:


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

向我们展示正在截断的代码。我已经用nvarchar(max)进行了测试,效果良好。必须有一些中间变量导致proc中的prob。谢谢你的帮助。