Может кто-нибудь узнать, что я сделал не так в этом подготовленном заявлении? - PullRequest
3 голосов
/ 20 декабря 2011

Я сделал подготовленное заявление для доступа к БД, хотя оно и не работает .. Я не совсем уверен, в чем проблема.

Что нужно сделать, это взять целое число и строку и обновить БДв соответствии с этим.

Вот код.Соединение с самой БД работает, это я знаю, потому что могу выполнять «нормальные» операторы.

public void updateShipment(int shipmentNumber, String currentLocation)
        throws SQLException {

    String sql = "UPDATE shipments SET current_node=? WHERE shipment_id=?";
    con.setAutoCommit(false);
    pre = con.prepareStatement(sql);
    pre.setInt(1, shipmentNumber);
    pre.setString(2, currentLocation);
    pre.executeUpdate();
    con.commit();
    pre.close();
    con.setAutoCommit(true);
}

Ответы [ 2 ]

9 голосов
/ 20 декабря 2011

Похоже, вы перепутали параметры 1 и 2 при их установке. Возможно, вы имели в виду:

pre.setString(1, currentLocation);
pre.setInt(2, shipmentNumber);
5 голосов
/ 20 декабря 2011

вы смешали параметры, это должен быть правильный код

pre.setInt(2, shipmentNumber);
pre.setString(1, currentLocation);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...