Как увеличить размер буфера в Oracle SQL Developer для просмотра всех записей (кажется, что по умолчанию установлено определенное ограничение)? Любые скриншоты и/или советы будут очень полезны.
Как увеличить размер буфера в Oracle SQL Developer для просмотра всех записей?
Ответы (10)
https://forums.oracle.com/forums/thread.jspa?threadID=447344
Соответствующий раздел гласит:
Нет настройки для получения всех записей. В любом случае вам не хотелось бы, чтобы SQL Developer извлекал минуты для больших таблиц. Если для одной конкретной таблицы вы хотите получить все записи, вы можете нажать Control-End на панели результатов, чтобы перейти к последней записи. Вы можете рассчитать время выборки самостоятельно, но оно будет зависеть от скорости и загруженности сети, программы (SQL * Plus будет быстрее, чем SQL Dev, потому что она проще) и т. д.
На панели инструментов также есть кнопка «Fetch All
».
FWIW Будьте осторожны при извлечении всех записей, для очень большого набора записей это может вызвать всевозможные проблемы с памятью и т. д.
Насколько я знаю, SQL Developer использует JDBC за кулисами для извлечения записей, а предел устанавливается процедурой JDBC setMaxRows()
, если вы можете изменить это (возможно, это не поддерживается), вы можете изменить SQL Developer поведение.
Ctrl
+ End
работает для получения всех строк любого SQL, а не только одной конкретной таблицы.
- person arun; 01.11.2016
Выберите «Инструменты» > «Настройки» > «База данных/Дополнительно».
Существует поле ввода для размера выборки массива Sql, но оно позволяет установить не более 500 строк.
Если вы запускаете сценарий вместо оператора, вы можете увеличить это значение, выбрав «Инструменты/Настройки/Рабочий лист» и увеличив «Макс. строк для печати в сценарии». По умолчанию 5000, вы можете изменить его на любой размер.
Это легко, но занимает 3 шага:
- В SQL Developer введите свой запрос в «Рабочий лист», выделите его и нажмите F9, чтобы запустить его. Первые 50 строк будут загружены в окно «Результат запроса».
- Щелкните любую ячейку в окне «Результат запроса», чтобы установить фокус на это окно.
- Удерживая клавишу Ctrl, нажмите клавишу «А».
Все строки будут загружены в окно "Результат запроса"!
Вы также можете отредактировать файл настроек вручную, чтобы установить для параметра Размер выборки массива любое значение.
Мой находится в C:\Users\<user>\AppData\Roaming\SQL Developer\system4.0.2.15.21\o.sqldeveloper.12.2.0.15.21\product-preferences.xml
на Win 7 (x64).
Значение находится в строке 372 для меня и читается как <value n="ARRAYFETCHSIZE" v="200"/>
Я изменил его на 2000, и это работает для меня.
Мне пришлось перезапустить SQL Developer.
нажмите f5 для запуска запросов вместо f9. Это даст вам все результаты за один раз...
Инструменты-> Настройки -> База данных -> Рабочий лист
Введите желаемый размер в поле «Максимальное количество строк для печати в скрипте».
Сохранить изменения.
После того, как вы извлечете первые 50 строк в окнах запроса, просто нажмите на любой столбец, чтобы получить фокус на окне запроса, затем после выбора нажмите клавишу ctrl + end
Это загрузит полный набор результатов (все строки)
после того, как вы получите первые 50 строк в окнах запросов, просто щелкните столбец, чтобы сфокусироваться на окне запроса, затем после выбора нажмите ctrl + pagedown
Это загрузит полный набор результатов (все строки)
Вот еще один обман:
Ограничьте свой запрос, если вам действительно не нужны все строки. то есть
WHERE rownum <= 10000
Затем нажмите на любую ячейку результатов и сделайте с клавиатуры CTRL+END
. Это заставит SQL Developer прокручивать до нижнего результата вашего запроса.
Преимущество этого заключается в сохранении поведения по умолчанию и использовании его по запросу.