web-dev-qa-db-ja.com

SQL-Developerを使用する場合のスクリプトによるファイルへの出力

大きな出力を生成するselectクエリがあり、それをsqldeveloperで実行して、すべての結果をファイルに取得します。

Sql-developerは5000行を超える結果を許可していません。フェッチする行が100 000行あります...

SQL +を使用できることはわかっていますが、これをsqldeveloperで実行したいとします。

15
Laurent K

スクリプトの実行(F5)を使用する代わりに、ステートメントの実行(Ctrl + Enter)を使用します。 Run Statementは一度に50レコードをフェッチし、結果をスクロールしながら表示します...しかし、結果を右クリックしてExport Data-> csv/html)を選択すると、出力全体をファイルに保存できます。/etc

私はSQLDeveloperの初心者なので、もっと良い方法があれば教えてください。

21
Mike G

はい、設定ツール->設定->データベース->ワークシート->スクリプトで印刷する最大行数を変更することで、ワークシートのサイズを増やすことができます(ユーザーによって異なります)。

5
Debashis Khatai

この質問は本当に古いですが、これを投稿することで、同様の問題を抱えている人を助けることができます。

クエリをquery.sqlファイルに保存して、スクリプトとして実行できます。以下はquery.sqlのサンプルです。

spool "C:\path\query_result.txt";
select * from my_table;
spool off;

Oracle SQL開発者では、このスクリプトをこのように実行するだけで、結果をquery_result.txtファイルで取得できるはずです。

@"C:\Path\to\script.sql"
4
Tech_Coder

singleステートメントの出力のみが必要な場合、Mike Gの回答は機能します。

ただし、複数のステートメント、SQL * Plusレポート、およびその他の出力形式を含むSQLスクリプト全体の出力が必要な場合は、SQL * Plusで使用されるのと同じ方法でspoolコマンドを使用できます。

0
vegatripy