Не получается внести данные в базу данных. Java
String les = (String) ls.get(i);
String les1 = (String) ls.get(i+1);
int rs = stmt.executeUpdate("INSERT INTO farms (namefarms, twonamefarms) VALUES ("+les+", "+les1+")");
Сразу скажу, что я начинаю только программировать. Я выгружаю данные с csv файла. Не знаю важно ли это, в csv файле данные на русском. Выгружаю их в список list, затем перекидываю по циклу в мою базу данных.
Выгружать их в список получается, но проблема в том, чтобы занести в базу.
Выводит
org.postgresql.util.PSQLException: ОШИБКА: ошибка синтаксиса (примерное положение: "К").
Ответы (2 шт):
Автор решения: Roman C
→ Ссылка
Нужно использовать PreparedStatement, как например в этом ответе.
String query = "INSERT INTO farms (namefarms, twonamefarms)" +
"VALUES (?,?)";
PreparedStatement statement = co.prepareStatement(query);
statement.setString(1, les1);
statement.setString(2, les2);
statement.executeUpdate();
Автор решения: Denis Rozhko
→ Ссылка
во-первых надо использовать PreparedStatement, ну а почему именно не работает в этом случае надо добавить кавычки '"+les+"', '"+les1+"')"