具有Slick 3.1.0的默认日期的列

Kha*_*tor 5 scala slick-3.0

我有一个events包含这些列的表

 _________________________
|___name_____|___time_____|
|            |            |
|____________|____________|
Run Code Online (Sandbox Code Playgroud)

时间列的值是在创建时使用当前日期自动生成的.

同样,我有这个案例类来表示表中的一行.

case class Event(name: String, time: Option[java.sql.Date] = None)
Run Code Online (Sandbox Code Playgroud)

现在,问题是当我尝试插入事件时

val event = Event("blah blah blah")
events += event
Run Code Online (Sandbox Code Playgroud)

光滑实际插入('blah blah blah', null)而不仅仅是('blah blah blah'),这使得时间字段null.

如果我在时间列上设置了约束NOT NULL,那么我会因插入尝试而出错null.

当然,我可以分解我的event对象,并执行插入,但我不知道是否有一种映射,告诉油滑此列是自动生成的,就像在自动递增ID列的情况:

def id = column[Long]("id", O.AutoInc)
Run Code Online (Sandbox Code Playgroud)

更新

所以我尝试设置时间列如下

def time = column[java.sql.Date]("time", O.AutoInc)
Run Code Online (Sandbox Code Playgroud)

它似乎工作.

AutoInc用于auto incrementauto generated列的状态的文档.

虽然我不确定这是否是正确的方法.