Oracle SQL Developerでバッファサイズを増やしてすべてのレコードを表示する方法(デフォルトでは特定の制限が設定されているようです)スクリーンショットやヒントは非常に役立ちます。
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 Developerの動作を変更できます。
[ツール]> [設定]> [データベース/詳細]を選択します
Sql Array Fetch Sizeの入力フィールドがありますが、最大500行までしか設定できません。
ステートメントの代わりにスクリプトを実行している場合、ツール/設定/ワークシートを選択し、「スクリプトで印刷する最大行数」を増やすことでこれを増やすことができます。デフォルトは5000で、任意のサイズに変更できます。
クエリを実行するには、f9の代わりにf5を押します。一度にすべての結果が得られます...
[ツール]-> [設定]-> [データベース]-> [ワークシート]
「スクリプトで印刷する最大行数」に希望のサイズを入力します
変更内容を保存。
また、環境設定ファイルを手動で編集して、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
Win 7(x64)で。
値は372行目にあり、<value n="ARRAYFETCHSIZE" v="200"/>
2000に変更しました。
SQL Developerを再起動する必要がありました。
簡単ですが、3つのステップが必要です。
すべての行が「クエリ結果」ウィンドウにフェッチされます!
クエリウィンドウで最初の50行を取得したら、列をクリックしてクエリウィンドウにフォーカスを移動し、選択したら一度ctrl + pagedown
これにより、完全な結果セット(すべての行)がロードされます。
ここに別のチートがあります:
本当にすべての行が必要でない場合は、クエリを制限します。つまり.
WHERE rownum <= 10000
次に、結果の任意のセルをクリックして、キーボードから行いますCTRL+END
。これにより、SQL Developerはクエリの最後の結果までスクロールします。
これには、デフォルトの動作を維持し、オンデマンドで使用するという利点があります。