0
空,我喜欢这个定义的列:自动时间戳油滑3 - 插入
def lastChecked = column[Timestamp]("LAST_CHECKED", O.Default(new Timestamp(System.currentTimeMillis())))
当我在表中插入数据,我忽略了此列。但Slick插入此列作为空值。这可以如何解决?
空,我喜欢这个定义的列:自动时间戳油滑3 - 插入
def lastChecked = column[Timestamp]("LAST_CHECKED", O.Default(new Timestamp(System.currentTimeMillis())))
当我在表中插入数据,我忽略了此列。但Slick插入此列作为空值。这可以如何解决?
您需要在数据库级别上为字段提供默认值。对于HSQLDB这样定义列:
last_checked TIMESTAMP DEFAULT CURRENT_TIMESTAMP
在光滑的将有足够的定义与时间戳类型字段:
val lastChecked: Rep[java.sql.Timestamp] = column[java.sql.Timestamp]("last_checked")
根据光滑documantation 只对DDL语句中使用O.Default。
@Xakernfoffe我正在使用HSQLDB,它不支持函数作为列的默认值。所以我想在代码 – user2975535
@ user2975535中使用CURRENT_TIMESTAMP作为TIMESTAMP类型的默认值。 (http://www.hsqldb.org/doc/guide/ch09.html - 创建表格章节) –