Как установить текущую дату и время с помощью подготовленного оператора?

У меня есть столбец в базе данных с типом данных DATETIME . Я хочу установить для этого столбца текущую дату и время с помощью PreparedStatement. Как мне это сделать?

26
задан BalusC 2 October 2011 в 11:41
поделиться

1 ответ

Используйте PreparedStatement#setTimestamp() , где вы передаете java.sql.Timestamp , который построен с System#currentTimeMillis() .

preparedStatement.setTimestamp(index, new Timestamp(System.currentTimeMillis()));
// ...

Альтернативно, если БД поддерживает это, вы также можете вызвать специальную функцию БД, чтобы установить ее с текущей меткой времени. Например, MySQL поддерживает now() для этого. Э.Г.

String sql = "INSERT INTO user (email, creationdate) VALUES (?, now())";

Или, если БД поддерживает это, измените тип поля на тот, который автоматически устанавливает метку времени вставки / обновления, например TIMESTAMP вместо DATETIME в MySQL.

47
ответ дан 28 November 2019 в 07:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: