3

我需要将日期列添加到表中,默认值由 oracle 的 sysdate 设置,如下所示

示例 { ... CREATED_ON DATE DEFAULT SYSDATE }

我想使用 slick table ddl 创建表

object ExampleTable extends Table[...]("EXAMPLE") {
def createdOn = column[java.sql.Date]("CREATED_ON", Default (?))
}

似乎默认值没有可用的 sysdate,我应该以编程方式处理这个默认值还是还有使用 Slick 的方法?

谢谢,

4

1 回答 1

0

我不相信在你的情况下使用 O.Default 是可能的。尝试 O.Default(new Date()) 时,它会将字段默认为 ddl 执行的日期,而不是 sysdate。

我认为最简单的解决方法是使用 DBType 来定义整个列,即

def createdOn = column[java.sql.Date]("CREATED_ON", DBType("date default sysdate"))

您可以通过检查 ExampleTable.ddl 对象来验证这一点。

于 2013-11-21T18:41:33.757 回答