Возникла проблема при получении строковых данных из столбца XML.У меня есть узел в XML, который состоит из огромных данных.Если я пытаюсь получить его либо с помощью метода value
, либо с помощью query
, он дает пустую строку (т. Е. Равную NULL в xml).
При отладке я узнал, только метод valueизвлечение данных, если символы в нем меньше или равны 43679 .
Я прочитал все вопросы SO, связанные с рисунком 43679 , что является ошибкой в SSMS, в то время каккопирование из сетки SSMS.Но здесь проблема не с SSMS.Даже SP, вызывающий приложение .Net, также получает ту же проблему.
Пример:
Declare @XmlStr XML;
select @XmlStr=
'<Main>
<Node1>/9j/4gIcSUNDX1BST0ZJTEUAAQEA.. 50000+Charcters ...</Node1>
</Main>';
SELECT @XmlStr.value('(/Main/Node1)[1]','varchar(max)') ;
Если Node1 содержит 43679 символов ниже, он выдает результат.Любая работа вокруг?или я что-то упустил ??
Я использую SQL Server 2008R2