我正在开发一个基于web的应用程序,使用spring-hibernate组合,Mysql作为数据库。我发现hibernate映射存在1个问题,当type为timestamp时,它不允许我设置null。以下是更好理解的代码段
我的议程是 - 我想允许用户为endTime输入空值,而不是stTime。
schedule.htm.xml
<id
name="id"
type="long"
column="test_run_schedule_id"
>
<generator class="increment" />
</id>
<property
name="testName"
type="java.lang.String"
column="test_run_name"
not-null="true"
length="45"
/>
<property
name="operation"
type="java.lang.String"
column="operation_included"
not-null="true"
length="500"
/>
<property
name="stTime"
type="java.util.Date"
column="start_time"
not-null="true"
length="19"
/>
<property
name="endTime"
type="java.util.Date"
column="end_time"
not-null="false"
length="19"
/>
当我查看Mysql数据库时,它向我显示了列start_time [timestamp, NOTNULL]
,以及end_time [timestamp, NOTNULL]
而不是end_time[timestamp, NULL]
。
因此,当我插入值时,默认情况下end_time
始终被视为CURRENT_TIMESTAMP
。
如何创建NULLABLE end_time
列?