#java #mysql #spring #hibernate #jpa
Вопрос:
Как я могу предотвратить создание расширения метки времени атрибута DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
?
Я просто хочу сам установить метку времени и не позволять базе данных обновлять или создавать метку времени?
@Entity
public class MyEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
public long id;
public LocalDateTime created_at;
}
CREATE TABLE `price_tracker` (
id bigint NOT NULL AUTO_INCREMENT,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id)
)
Комментарии:
1. это mysql ?
2. @membersound Какой диалект гибернации вы используете?
3. Я использую последнюю
spring-boot
версию иspring.jpa.hibernate.ddl-auto=update
с mysql. Не уверен, как я могу увидеть диалект? Вероятно, этоMySQL8Dialect
Ответ №1:
Избавился от него следующим образом:
@Column(updatable = false,
columnDefinition = "TIMESTAMP(2)")
public LocalDateTime created_at;