ntext字段存放了诸如
<?xml version="1.0" encoding="utf-16"?>
<ArrayOfFieldInfo>
  <FieldInfo Id="title" Disabled="false" OrderId="1">
    <FieldName>Title</FieldName>
    <EnableShowOnSearchForm>true</EnableShowOnSearchForm>
    <EnableFilter>false</EnableFilter>
  </FieldInfo>
之类的数据,长度可能大于8000
请问如何修改其中的某个地方,如把Title改为TitleNN?

解决方案 »

  1.   

    转成VARCHAR(MAX)
    再REPLACE更新现有的 text、ntext 或 image 字段。使用 UPDATETEXT 可以只更改 text、ntext 或 image 列的一部分。使用 WRITETEXT 可以更新和替换整个 text、ntext 或 image 字段。重要事项:  
    后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并应着手修改当前还在使用该功能的应用程序。 请改用大值数据类型和 UPDATE 语句的 .WRITE 子句。
     
     Transact-SQL 语法约定语法
     
    UPDATETEXT { table_name.dest_column_name dest_text_ptr }
        { NULL | insert_offset }
         { NULL | delete_length }
         [ WITH LOG ]
         [ inserted_data
        | { table_name.src_column_name src_text_ptr } 
     
      

  2.   

    2005以上的,把字段类型都改为varchar(max),2000的,参考1L的 text更新语法