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()) を試行すると、フィールドのデフォルトは sysdate ではなく、ddl が実行された日付になります。

最も簡単な回避策は、DBType を使用して列全体を定義することだと思います。

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

これは、ExampleTable.ddl オブジェクトを調べることで確認できます。

于 2013-11-21T18:41:33.757 に答える