簡體   English   中英

如何在 Oracle SQL Developer 中增加緩沖區大小以查看所有記錄?

[英]How to increase buffer size in Oracle SQL Developer to view all records?

如何在 Oracle SQL Developer 增加buffer size查看所有記錄(默認好像有一定的限制)? 任何屏幕截圖和/或提示都將非常有幫助。

https://forums.oracle.com/forums/thread.jspa?threadID=447344

相關部分寫道:

沒有設置來獲取所有記錄。 無論如何,您不希望 SQL Developer 在大表上獲取幾分鍾。 如果,對於 1 個特定表,您想要獲取所有記錄,您可以在結果窗格中執行 Control-End 以轉到最后一條記錄。 您可以自己計算獲取時間,但這會因網絡速度和擁塞情況、程序(SQL*Plus 將比 SQL Dev 更快,因為它更簡單)等而有所不同。

工具欄上還有一個按鈕,它是“ Fetch All ”按鈕。

FWIW 小心檢索所有記錄,對於非常大的記錄集,它可能會導致您遇到各種內存問題等。

據我所知,SQL Developer 在幕后使用 JDBC 來獲取記錄,並且限制是由 JDBC setMaxRows()過程設置的,如果您可以更改它(可能不支持),那么您可以更改SQL 開發人員行為。

選擇工具 > 首選項 > 數據庫/高級

Sql Array Fetch Size 有一個輸入字段,但它最多只允許設置 500 行。

如果您正在運行腳本而不是語句,您可以通過選擇工具/首選項/工作表並增加“在腳本中打印的最大行數”來增加它。 默認為 5000,您可以將其更改為任意大小。

這很簡單,但需要 3 個步驟:

  1. 在 SQL Developer 中,在“工作表”中輸入您的查詢並突出顯示它,然后按 F9 運行它。 前 50 行將被提取到“查詢結果”窗口中。
  2. 單擊“查詢結果”窗口中的任何單元格以將焦點設置到該窗口。
  3. 按住 Ctrl 鍵並點擊“A”鍵。

所有行都將被提取到“查詢結果”窗口中!

您還可以手動編輯首選項文件以將 Array Fetch Size 設置為任何值。

我的位於C:\\Users\\<user>\\AppData\\Roaming\\SQL Developer\\system4.0.2.15.21\\o.sqldeveloper.12.2.0.15.21\\product-preferences.xml on Win 7 (x64)。

該值在我的第 372 行,讀取為<value n="ARRAYFETCHSIZE" v="200"/>

我已將其更改為 2000,它對我有用。

我不得不重新啟動 SQL Developer。

按 f5 而不是 f9 運行查詢。 它會一次性為您提供所有結果...

工具->首選項->數據庫->工作表

在“要在腳本中打印的最大行數”中輸入所需的大小

保存更改。

在查詢窗口中獲取前 50 行后,只需單擊任意列即可獲得查詢窗口的焦點,然后選擇后執行ctrl + end key

這將加載完整的結果集(所有行)

在查詢窗口中檢索前 50 行后,只需單擊一列即可獲得查詢窗口的焦點,然后選擇后執行ctrl + pagedown

這將加載完整的結果集(所有行)

這是另一個作弊:

如果您真的不需要所有行,請限制您的查詢。 IE

WHERE rownum <= 10000

然后單擊結果的任何單元格並從鍵盤上執行CTRL+END 這將強制 SQL Developer 滾動到查詢的底部結果。

這具有保持默認行為並按需使用的優點。

我知道這有點晚了,但只需使用您的操作系統快捷方式到 select all(在 macOS 上為 Command + a 或在 Windows 上為 Ctrl + a),這將強制將所有結果提取到 select 所有行:)

在 PL SQL Developer 13.0.6 上,轉到配置 > 首選項。 在左側菜單中查找 SQL Window。 有一個名為“每頁記錄”的選項。 我將其更改為“所有記錄”,它就成功了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM