我正在尝试使用 scalikejdbc(试图从 Slick 迁移),并且我坚持从实体创建我的模式(阅读:案例类)。
// example Slick equivalent
case class X(id: Int, ...)
class XTable(tag: Tag) extends Table[X] (tag, "x") {
def id = column[Int]("id")
... //more columns
def * = (id, ...) <> (X.tupled, X.unapply)
}
val xTable = TableQuery[XTable]
db.run(xtable.schema.create) //creates in the DB a table named "x", with "id" and all other columns
似乎使用 SQLSyntaxSupport 可能是朝着正确方向迈出的一步,例如
// scalikejdbc
case class X (id: Int, ...)
object X extends SQLSyntaxSupport[X] {
def apply (x: ResultName[X])(rs: WrappedResultSet): X = new X(id = rs.get(x.id, ...))
}
X.table.??? // what to do now?
但无法弄清楚下一步。
我正在寻找的是与[逆向工程]中描述的工具相反的东西:http: //scalikejdbc.org/documentation/reverse-engineering.html
任何帮助/想法,特别是文档相关部分的说明,将不胜感激