Оператор обновления SQL не изменяет запись - PullRequest
0 голосов
/ 23 февраля 2012

У меня есть оператор обновления sql, но я не понимаю, почему он не обновляет мои записи, он просто ничего не делает, что-то не так с синтаксисом?

    private static final String strUpdatePerson =
        "UPDATE APP.PERSON " +
        "SET FIRSTNAME = ?, " +
        "    LASTNAME = ?, " +
        "    ADDRESS = ?, " +
        "    PHONE = ?, " +
        "    EMAIL = ?, " +   
        "    INFO = ? " +
        "WHERE ID = ?";

Это очень запутаннопоскольку ошибки не выдается, он выполняет обновление, но ничего не изменяет в базе данных.

Редактировать:

Вот выполняемый запрос:

    stmtUpdateExistingRecord = dbConnection.prepareStatement(strUpdateCustomer);


    stmtUpdateExistingRecord.clearParameters();
        stmtUpdateExistingRecord.setString(1, record.firstName.toUpperCase());
        stmtUpdateExistingRecord.setString(2, record.lastName.toUpperCase());
        stmtUpdateExistingRecord.setString(3, record.Address);
        stmtUpdateExistingRecord.setString(4, record.phoneNumber);
        stmtUpdateExistingRecord.setString(5, record.email);
        stmtUpdateExistingRecord.setString(6, record.info);
        stmtUpdateExistingRecord.setInt(7, record.getID());
        stmtUpdateExistingRecord.executeUpdate();

1 Ответ

2 голосов
/ 23 февраля 2012

Вы должны либо позвонить dbConnection.setAutoCommit(true); до executeUpdate() или dbConnection.commit(); после executeUpdate()

Если dbConnection.getAutoCommit() вернет true, товы испытываете другую ошибку.Вы уверены, что это не бросает Exception?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...