从光滑的表定义创建表

时间:2017-09-23 17:26:56

标签: scala playframework slick play-slick

在PlaySlick示例中,有一个带有示例数据访问对象的文件。

https://github.com/playframework/play-slick/blob/master/samples/basic/app/dao/CatDAO.scala

和表定义:

  private class CatsTable(tag: Tag) extends Table[Cat](tag, "CAT") {

    def name = column[String]("NAME", O.PrimaryKey)
    def color = column[String]("COLOR")

    def * = (name, color) <> (Cat.tupled, Cat.unapply)
  }

是否可以使用此定义生成新表而无需使用播放演变?如果没有,为什么?

1 个答案:

答案 0 :(得分:0)

不幸的是,仅使用光滑的表定义是不可能的。 从光滑的文档:

  

Slick本身没有对数据库的开箱即用支持   迁移,但有一些第三方工具可以很好地使用   光滑。

但他们指出了一些替代方案here

来自光滑团队的一些人:

  

Slick和Slick DDL插件都只能生成要创建的代码   或删除您的架构,而不是进化它。所以你还需要玩   演变或类似的东西修改沿着现有的架构   方式。

查看答案here