Обновите дату и время в строке Memo, используя Java и UCanAccess

Я хочу обновить дату и время в поле Memo, используя UCanAccess. Например - 27.05.2015 Система: какая-то строка, это все, что мне нужно обновить в памятном поле.

Что я пробовал - я конвертирую дату в строку, используя следующий код:

DateFormat df = new SimpleDateFormat("yyyyMMdd");
Date today = Calendar.getInstance().getTime();              
String reportDate = df.format(today);

а затем с помощью запроса на обновление ucanaccess, как это:

st.executeUpdate(" update tblCaseInventory set fldContactNotes = " + reportDate   + "' System : CAR Report '" +  "  where fldCaseNumber = " +  rs1.getInt("fldCaseNumber"));

но я получаю ошибку:

Неожиданный токен: Система.

Как этого добиться?

1 ответ

Решение

Вы должны использовать PreparedStatement чтобы выполнить параметризованный запрос, что-то вроде этого:

String sql = 
        "UPDATE tblCaseInventory " +
        "SET fldContactNotes=? " +
        "WHERE fldCaseNumber=? ";
try (PreparedStatement ps = conn.prepareStatement(sql)) {
    DateFormat df = new SimpleDateFormat("yyyyMMdd");                                                   
    java.util.Date today = Calendar.getInstance().getTime();              
    String reportDate = df.format(today);
    ps.setString(1, reportDate + " System : CAR Report");
    ps.setInt(2, rs1.getInt("fldCaseNumber"));
    ps.executeUpdate();
}
Другие вопросы по тегам