Я использую postgresql для размещения своей базы данных. В моей базе данных есть таблица с именем xyz, структура которой показана ниже
id content folder
1 hello Inbox
2 hi Sent
Я хочу экспортировать эту таблицу в CSV, используя мою Java-программу. Фрагмент кода ниже
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();
Когда я выполняю этот код, я получаю SQLException
, говоря
ERROR: there is no parameter $1
Если я выполняю код без указания папки ("copy (SELECT * FROM xyz) to 'C:/export.csv' delimiter ','")
), код работает нормально.
Что я здесь не так делаю? Как решить эту проблему?
Примечание. Если я выполню запрос (copy (SELECT * FROM xyz WHERE folder='Inbox' ORDER BY time) to 'G:/export.csv' delimiter ','
) непосредственно в консоли Postgresql SQL, я получу желаемый результат.
Пожалуйста, помогите