Подтвердить что ты не робот

JDBC ResultSet getDate потери точности

Я теряю точность в своих вызовах ResultSet.getDate(x). В основном:

rs = ps.executeQuery();
rs.getDate("MODIFIED");

возвращает даты, усеченные до дня, когда MODIFIED является полем Oracle TIMESTAMP точности по умолчанию. Я думаю, что может быть какая-то настройка JDBC, которую я пропускаю; обычно TIMESTAMP совместим с DATE, но я надеюсь, что мне не нужно переопределять всю таблицу.

4b9b3361

Ответ 2

Вы должны использовать java.sql.Timestamp вместо java.sql.Date. Вы можете использовать его как объект java.util.Date после этого, если необходимо.

rs = ps.executeQuery();
Timestamp timestamp = rs.getTimestamp("MODIFIED");

Надеюсь, что это поможет.

Ответ 3

Использование Timestap - правильный путь. Пожалуйста, не делайте этого с помощью Timestamp, вы не сможете установить столбцы в значение NULL, если вы будете использовать Liquibase.

Проблема, с которой я столкнулся.