2012-03-02 13 views
1

私はデータベースをホストするために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 ',')を直接実行すると、目的の出力が得られます。

私は最終的に自分の答えを見つけた

+0

わからない行われたこの

Connection connection2 = new ServerDBConnect().getConnection(); PreparedStatement statement = connection2.prepareStatement("copy (SELECT * FROM xyz WHERE folder='" + FOLDER_SELECTED + "') to 'C:/export.csv' delimiter ','"); 

ようになると仮定されて私に望ましい結果

を与えましたこの質問があなたに関連する場合:http://stackoverflow.com/questions/5726362/does-postgresql-jdbc-driver-has-copy –

+0

@AndreaPolci:ありがとうございますが、そのリンクは私にとっては関係ありません。自分のローカルデータベースにあるテーブルの内容を自分のローカルシステムにエクスポートしようとしています –

+0

私に関連しています。このリンクは、JDBCから 'copy'を使う方法を尋ねる質問にリンクしています。 – skaffman

答えて

2

ああ

助けてください。クエリ内の

小さな変化がクエリがこれは狂気私を運転、ようやく:-)

関連する問題