【问题标题】:How to let hibernate create TIMESTAMP that is not autogenerated?如何让休眠创建不是自动生成的 TIMESTAMP?
【发布时间】:2021-05-06 17:05:24
【问题描述】:

如何防止生成属性时间戳扩展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)
)

【问题讨论】:

  • 这是 mysql 吗?
  • @membersound 你使用什么休眠方言?
  • 我正在使用最新的spring-bootspring.jpa.hibernate.ddl-auto=update 和mysql。不确定,我怎样才能看到方言?可能是MySQL8Dialect

标签: java mysql spring hibernate jpa


【解决方案1】:

摆脱它如下:

@Column(updatable = false,
        columnDefinition = "TIMESTAMP(2)")
public LocalDateTime created_at;

【讨论】:

    猜你喜欢
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    • 2019-11-29
    • 2011-04-05
    • 1970-01-01
    • 2015-06-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多