私はデータベースをホストするためにpostgresqlを使用しています。私のデータベースでは、私はテーブルを持っていると言うのxyzその構造JDBCのCSVへのportgresqlテーブルのエクスポートに関する問題
id content folder
1 hello Inbox
2 hi Sent
の下に示されているように私は私のJavaプログラムを使用してCSVにこのテーブルをエクスポートします。私はこのコードを実行すると、コードスニペットは
Connection connection2 = new ServerDBConnect().getConnection();
PreparedStatement statement = connection2.prepareStatement("copy (SELECT * FROM xyz WHERE folder=?) to 'C:/export.csv' delimiter ','");
statement.setString(1, FOLDER_SELECTED); //Here, FOLDER_SELECTED=Inbox
statement.execute();
を下回っている、私は私が指定したフォルダ("copy (SELECT * FROM xyz) to 'C:/export.csv' delimiter ','")
)なしでコードを実行すると、コードが正常に動作し
ERROR: there is no parameter $1
を言ってSQLException
を取得しています。
私はここで間違っていますか?この問題についてどうやって行くのですか?
注:Postgresql SQLコンソールでクエリ(copy (SELECT * FROM xyz WHERE folder='Inbox' ORDER BY time) to 'G:/export.csv' delimiter ','
)を直接実行すると、目的の出力が得られます。
私は最終的に自分の答えを見つけた
わからない行われたこの
ようになると仮定されて私に望ましい結果
を与えましたこの質問があなたに関連する場合:http://stackoverflow.com/questions/5726362/does-postgresql-jdbc-driver-has-copy –
@AndreaPolci:ありがとうございますが、そのリンクは私にとっては関係ありません。自分のローカルデータベースにあるテーブルの内容を自分のローカルシステムにエクスポートしようとしています –
私に関連しています。このリンクは、JDBCから 'copy'を使う方法を尋ねる質問にリンクしています。 – skaffman