【问题标题】:SQL Server 2005 select query not retrieving complete text from a columnSQL Server 2005 选择查询未从列中检索完整文本
【发布时间】:2014-03-11 11:29:01
【问题描述】:
也许这很简单,但我不知道为什么会这样。
简单来说,我在数据库表中插入了一行,其中包含一个名为content 的ntext 列。进入此列content 的字符串值的文本长度为 6889 个字符。但是,当我基于 id 执行基本选择查询时,它会检索行 - 但不是来自列 Content 的完整文本。当我进行选择查询时,我在 SQL Server Management Studio 中看到的所有内容都是包含字符 43679 的文本。
插入数据没有问题,我可以看到前端应用程序中显示的所有文本。问题只是当我进行选择查询并将文本复制到记事本时,我看到的字符更少。有关 SQL Server 设置/分页/统计的任何信息?感谢是否有人可以帮助我解决这个问题。
谢谢,
KK
【问题讨论】:
标签:
sql
sql-server
sql-server-2005
【解决方案1】:
遇到similar problem,发现 SSMS 无法完全检索超过 43680 的列(在输出到网格模式下)。
所以解决方法是将其输出为 XML(无限长度):
SELECT convert(xml,'<xml><![CDATA[' + cast([your column] as varchar(max)) + ']]></xml>')
然后进行快速搜索和替换(&lt; 到 <,&gt; 到 >)。您现在可以将结果复制到 Notepad++ 以查看所有内容。
【解决方案2】:
SSMS 向每个基于文本的列的网格或文本窗口返回最大字符数:SSMS 菜单:选项:查询结果节点:SQL 节点:结果到网格/结果到文本
我确信这是有充分理由的:可能 SSMS 会比现在更频繁地崩溃。
希望这会有所帮助......没有愚蠢的问题