Ответ 1
DATE и TIMESTAMP имеют одинаковый размер (7 байт). Эти байты используются для хранения век, десятилетия, года, месяца, дня, часа, минуты и секунд. Но TIMESTAMP позволяет хранить дополнительную информацию, такую как дробные секунды (11 байт) и дробные секунды с часовым поясом (13 байт).
TIMESTAMP был добавлен как ANSI, совместимый с Oracle. До этого он имел только DATE.
В общих случаях вы должны использовать DATE. Но если точность во времени является требованием, используйте TIMESTAMP.
И о Java, класс oracle.sql.DATE из драйвера JDBC Oracle, обеспечивает преобразования между типом данных Oracle Date/Timestamp и Java-классами java.sql.Date, java.sql.Time и java.sql.Timestamp.