0

我有一个包含 ntext 数据类型列的表。

我编写查询以搜索一些示例,例如:

SELECT 
    Id,
    NtextColumnName
FROM Table
WHERE 
    NtextColumnName LIKE N'%search_term%'

并得到一定数量的行。但是,当查看此列以找到search_term它时,我没有看到它,似乎结果被截断了。

我还尝试在文本中显示结果并应用查找,但没有结果。

如何检查NtextColumnName列中是否存在某些搜索词,并使该结果可见?

4

1 回答 1

2

根据列数据的长度,如果您只是想在 Management Studio 中查看数据,请将列转换为 XML 数据类型:

declare @t1 table(c1 ntext)
insert into @t1 values(space(5000) + 'a' + space(5000))
select cast(c1 as xml) from @t1

该示例将为您提供一个列,您可以单击该列以在新窗口中查看整个数据集。

返回最大数据量的设置:

  • 工具 | 选项 | 查询结果 | SQL 服务器 | 结果转文本 | 每列显示的最大字符数
  • 工具 | 选项 | 查询结果 | SQL 服务器 | 结果到网格 | 检索到的最大字符数

编辑:要获得完整值,对于更大的数据大小,此答案指向将其包装在 CDATA 列中的正确方法:

declare @t1 table(c1 ntext)
insert into @t1 values(space(10000) + 'a' + space(10000))
select 
  convert(xml,'<xml><![CDATA[' + cast(c1 as varchar(max)) + ']]></xml>') 
from 
  @t1
于 2013-04-09T13:39:25.300 回答