Как получить полные данные из студии управления SQL для столбца ntext?
Я использую SQL Server 2005. В одной из таблиц у меня есть столбец "xmldefinition", который имеет тип ntext. Теперь данные в этом столбце очень большие и содержат весь текст xml.
например:- <root><something1>....</something1></root>
Я хочу получить всю строку из студии управления и скопировать ее снаружи в XML-файл, чтобы вручную просмотреть весь XML-файл. Но когда я запрашиваю этот столбец и копирую и вставляю данные в другой файл, содержимое разбивается посередине, и оно не завершено.
например:- <root><something1>........<somechar
Я считаю, что это будет скопировать только некоторые 8196 символов из данных XML в столбце. Итак, мой вопрос, как мне получить полные данные для этого столбца вручную. Однако я могу написать код C# для чтения этого столбца, но я хочу сделать это вручную в Management Studio. Любая идея, пожалуйста.
3 ответа
Почему бы не преобразовать данные из NText в XML в вашем операторе select? Затем вы получаете возможность открыть XML в отдельном окне в SSMS.
Техника экспорта, показанная в усечении SQL Server и ограничении 8192, сработала для меня. В заключение говорится:
Вы можете экспортировать данные в плоский файл, который не будет усечен. Сделать это:
- Щелкните правой кнопкой мыши базу данных
- Нажмите Задачи -> Экспорт данных
- Выберите ваш источник данных (по умолчанию должно быть в порядке)
- Выберите "Назначение плоского файла" в качестве типа назначения.
- Выберите имя файла для вывода.
- В поле "Указать копию таблицы или запрос" выберите "Написать запрос, чтобы указать данные для передачи"
- Вставьте в ваш запрос
Остальные шаги должны быть самоочевидными. Это выведет файл в текст, и вы можете открыть его в своем любимом текстовом редакторе.
Единственный способ превышения этого лимита в целом - через XML. Для длинных столбцов varchar я обычно использую что-то вроде следующего (трюк с инструкцией обработки избегает <
меняется на <
так далее.)
select object_definition(object_id('sysdatabases'))
as [processing-instruction(x)] FOR XML PATH
Конечно, в вашем случае данные уже в формате XML, так что простое приведение должно работать!