я получаю сообщение об ошибке, когда я пытаюсь выполнить запрос: UPDATE
Проблемы с синтаксисом SQL при использовании JDBC и подготовленные заявления
У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с?? в строке 1
И это код у меня есть:
sql = "UPDATE object_1_ SET attr_2_ = ?";
prepared = dbConnection.prepareStatement(sql);
prepared.setString(1, "abc");
prepared.executeUpdate();
Однако, если я немного изменить код и удалить параметры:
sql = "UPDATE object_1_ SET attr_2_ = 'abc'";
prepared = dbConnection.prepareStatement(sql);
prepared.executeUpdate();
затем он работает. Итак, мне интересно, что я здесь делаю неправильно?
Вы должны поставить значение строки как 'prepared.setString (1, «abc»), 'включая '. –
Действительно ??? Я думал, что подготовленные заявления существуют, чтобы полностью удалить все эти головные боли при цитировании, слэшах и т. Д. Я думаю, вы не правы. Кроме того, в реальном мире у меня будет переменная типа 'prepare.setString (1, val);'. Я проверил этот случай, и он также не работает. – Jacobian
Я проверил его. На самом деле одинарные кавычки не помогли, как и ожидалось. – Jacobian