私はCSVファイルに書き込む必要があるいくつかのテーブルから多くのカラムを返すJDBIクエリを持っています。どうすればこれを達成できますか?私はPostgresデータベースに対して起動するためのクエリを作成するために、検索基準のPOSTを受け取るRESTエンドポイントを持っています。私はDropwizardとJDBIを使用しています。クエリ結果をCSVに変換する
1
A
答えて
2
COPY TO
を使用してください。
COPY (SELECT ...) TO '/path/to/myfile1.csv' FORMAT csv;
ファイルに書き込む場合は、スーパーユーザー権限が必要です。それは、サーバがアクセス 権限を持つ任意のファイルを読み書きすることができますので、唯一のデータベースのスーパーユーザ、 に許可されているファイルやコマンドを命名The manual:
COPY
。
または、出力をファイルに保存せずに直接STDOUT
に送信することができます(スーパーユーザー権限なしでも可能です)。
クライアントにファイルを書き込むには(DBサーバーとは別にすることもできます)、同じ機能をカプセル化するメタコマンド\copy
of psqlを使用します。これは、not require superuser privileges:
これは、ファイルのアクセシビリティと特権がサーバーではなくローカルユーザーのものであり、SQLスーパーユーザー権限が不要であることを意味します。
詳細:
関連する問題
- 1. SQLクエリの結果をCSV形式に変換する方法
- 2. クエリ結果をテキスト変数に変換する方法は?
- 3. クエリからの結果をPHP変数に変換する
- 4. クエリ結果をjs変数(JavaScript)に変換する方法
- 5. gormのクエリ結果をdictに変換するには?
- 6. Mnesiaのクエリ結果をJSONのリストに変換するには?
- 7. SQLクエリの結果を変数に変換しますか?
- 8. Pythonがjsonにmysqlクエリ結果を変換する
- 9. スプリングデータJPA - クエリ結果をエンティティクラスに変換する方法
- 10. MDXクエリ結果をリレーショナル形式に変換する
- 11. Slick 3.0のクエリ結果をAkka Streams GraphStageに変換する
- 12. クエリ結果を文字列に変換する方法#
- 13. LINQクエリ結果をListに変換する方法は?
- 14. LINQ:選択中にクエリ結果を変換する方法は?
- 15. クエリの結果を配列の配列に変換する
- 16. pgadmin4 - クエリ結果をCSVとしてダウンロード
- 17. T-SQLクエリの結果を変数に変換
- 18. バッチ:CSV結果への出力Regクエリ
- 19. クエリ結果としてのSQL CSV列
- 20. PHP変数結果をCSVにエクスポート
- 21. PostgreSQLでクエリの結果を変換する方法
- 22. PHPのMySQLクエリ結果をCSVファイルに出力する
- 23. SQLクエリをVBAに変換し、結果をフォーム
- 24. 結合クエリをサブクエリに変換する
- 25. 文字列から任意のデータ型にインポート、CSV結果を変換する
- 26. ヌルSQLクエリ結果を文字列に変換
- 27. mysqlクエリの結果を変更する
- 28. SQLクエリで結果を含むCSVファイルを生成する
- 29. $結果をCSVにエクスポート
- 30. soapui xmlテスト結果をxls/csv形式に変換しますか?
はまた、あなたがこれを書くためにCSVWriter(OpenCsv)を使用することができます。それでは、次にデータベースのソリューションを切り替える必要があるときに、アプリケーションは中断しません。(うまくいけば) – pandaadb
スーパーユーザーの権限要件のために 'COPY'を使用することはできません。 'CsvResultSetWriter'を持つSuperCSVを使用しています。しかし、実際のクエリ結果としてこれを実現する方法がいくつかのテーブルからの列のセットであり、 '@ RegisterMapper'クラスを持つ必要はなく、私は持っていません。 – Nikki
@Nikki:psqlの '\ copy'にはスーパーユーザー権限は必要ありません。追加の詳細を検討してください。 –