使用类型为“datetime”的hibernate UPDATE列为mysql

时间:2014-02-28 17:29:28

标签: mysql hibernate datetime orm

我正在使用Hibernate进行ORM映射。其中一个表有一个类型为“datetime”的列。需要使用“当前时间”(数据插入时间)更新相关列。我知道我可以使用date()函数作为默认值。我宁愿在设置对象的其他属性时设置时间戳。

问题 1)Java中的SQL date()函数的等价物是什么?

3 个答案:

答案 0 :(得分:0)

使用mysql,您可以设置更新时的更改: http://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization.html

CREATE TABLE t1 (
  ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

将使用数据库的当前时间戳更新attribut。

(你很幸运,因为它不适用于oracle ...(我和oracle一起......)。

答案 1 :(得分:0)

java中SQL date()的等价物只是new Date(),例如:

myEntity.setDateField(new Date());

会将dateField设置为当前日期和时间。

答案 2 :(得分:-1)

我正在尝试使用我的代码:

myEntity.setdDateCreated(new Date());

在休眠映射中 - >

property name =“dateCreated”column =“date_created”type =“timestamp”

但是在mysql中它保存为'0000-00-00 00:00:00'

有人猜到为什么会这样吗?