В этой действующей базе данных SQL Server 2008 (сборка 10.0.1600) есть Events
таблица, которая содержит text
столбец с именем Details
. (Да, я понимаю, что на самом деле это должен быть varchar(MAX)
столбец, но тот, кто создал эту базу данных, не сделал этого.)
Этот столбец содержит очень большие журналы исключений и связанных данных JSON, к которым я пытаюсь получить доступ через SQL Server Management Studio, но всякий раз, когда я копирую результаты из сетки в текстовый редактор, он обрезает их до 43679 символов.
Я читал в разных местах в Интернете, что вы можете установить для параметра Максимальное количество символов, извлекаемых для XML-данных, Tools > Options > Query Results > SQL Server > Results To Grid
значение Неограниченное, а затем выполнить такой запрос:
select Convert(xml, Details) from Events
where EventID = 13920
(Обратите внимание, что данные в столбце - это вовсе не XML. CONVERT
Преобразование столбца в XML - это просто обходной путь, который я нашел в Google, который кто-то использовал для обхода ограничения, которое SSMS имеет на получение данных из столбца text
или varchar(MAX)
.)
Однако после установки указанного выше параметра, выполнения запроса и щелчка по ссылке в результате я все равно получаю следующую ошибку:
Невозможно показать XML. Произошла следующая ошибка: Неожиданный конец файла. Строка 5, позиция 220160.
Одно из решений - увеличить количество символов, получаемых с сервера для данных XML. Чтобы изменить этот параметр, в меню «Сервис» щелкните «Параметры».
Итак, есть идеи, как получить доступ к этим данным? Помогло бы преобразование колонки varchar(MAX)
исправить мои проблемы?