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

Я пытаюсь установить метку времени в своей базе данных с помощью java, однако в моей таблице я получаю только дату, а не время (т.е. выглядит как «2010-09-09 00:00:00»).

Я использую поле datetime в своей базе данных mysql (поскольку кажется , что datetime более распространено, чем timestamp ). Мой код для установки даты выглядит так:

PreparedStatement ps = conn.prepareStatement("INSERT INTO mytable (datetime_field) VALUES (?)")
java.util.Date today = new java.util.Date();
java.sql.Date timestamp = new java.sql.Date(today.getTime());
ps.setDate(1, timestamp);
ps.executeUpdate();

Как мне установить дату, чтобы включить время?

Изменить: Я изменил код, как показано ниже, и он устанавливает и дату, и время.

PreparedStatement ps = conn.prepareStatement("INSERT INTO mytable (datetime_field) VALUES (?)")
java.util.Date today = new java.util.Date();
java.sql.Timestamp timestamp = new java.sql.Timestamp(today.getTime());
ps.setTimestamp(1, timestamp);
ps.executeUpdate();

23
задан Community 23 May 2017 в 10:28
поделиться