我可以在Slick表的日期列上将sysdate设置为默认值

时间:2013-08-06 02:20:32

标签: slick

我要求在表中添加日期列,默认值由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的方法?

谢谢,

1 个答案:

答案 0 :(得分:0)

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

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

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

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