Как разрешить спящему режиму создавать МЕТКУ ВРЕМЕНИ, которая не генерируется автоматически?

#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;