Sandeep Mewara
Ссылка: https://support.microsoft.com/en-in/help/2874903[^]
Причина:
Эта проблема возникает из-за того, что SSMS недостаточно памяти для выделения больших результатов.
Примечание SSMS-это 32-разрядный процесс. Поэтому он ограничен 2 ГБ памяти. SSMS накладывает искусственное ограничение на количество текста, которое может быть отображено на одно поле базы данных в окне результатов. Этот предел составляет 64 КБ в режиме "сетка" и 8 КБ в режиме "текст". Если результирующий набор слишком велик, объем памяти, необходимый для отображения результатов запроса, может превысить ограничение SSMS в 2 ГБ. Поэтому большой результирующий набор может вызвать ошибку, описанную в разделе "симптомы".
Как было предложено там, чтобы обойти эту проблему, попробуйте один из следующих методов:
Method 1: Output the results as text
Настройте окно запроса так, чтобы результаты запроса выводились в виде текста. Текстовый вывод использует меньше памяти, чем сетка, и этого может быть достаточно для отображения результатов запроса. Чтобы внести это изменение, выполните следующие действия:
Щелкните правой кнопкой мыши окно запроса.
Нажмите кнопку Результаты, чтобы.
Нажмите кнопку Результаты в текст.
Method 2: Output the results to a file
Настройте окно запроса для вывода результатов запроса в файл. Вывод файла использует минимальный объем памяти. Это позволяет сохранить больше памяти для хранения набора результатов. Чтобы внести это изменение, выполните следующие действия:
Щелкните правой кнопкой мыши окно запроса.
Нажмите кнопку Результаты, чтобы.
Нажмите Кнопку Результаты В Файл.
Выполните запрос, а затем выберите расположение, в котором будет сохранен файл результатов.
Method 3: Use sqlcmd
Используйте
инструмент sqlcmd[
^] вместо SSMS для выполнения SQL-запросов. Этот метод позволяет выполнять запросы без ресурсов, необходимых для пользовательского интерфейса SSMS. Кроме того, вы можете использовать 64-разрядную версию Sqlcmd.exe чтобы избежать ограничения памяти, которое влияет на 32-разрядный процесс SSMS.