Ich experimentiere mit scalikejdbc (versucht, von Slick verschieben), und ich bin bei der Erstellung meines Schemas aus den Entitäten (lesen: Fall Klassen).Extrahieren DDL von Fallklassen
// 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
Es schien wie mit SQLSyntaxSupport ein Schritt in die richtige Richtung sein könnte, mit so etwas wie
// 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?
konnte aber nicht den nächsten Schritt herauszufinden.
Was ich suche ist das Gegenteil von dem Werkzeug unter [Reverse-Engineering] beschrieben: http://scalikejdbc.org/documentation/reverse-engineering.html
Jede Hilfe/Ideen, insbesondere Richtungen zu einem relevanten Teil der Dokumentation werden
geschätzt werden