私の Scala/Play DB URL 設定は次のようになります。
db.default.url="jdbc:mysql://localhost"
複数のデータベースを使用しているため、データベースを選択できません。
列名と値のペアのマップの形式でデータベース テーブルからデータを取得するメソッドがあります。
def getSession(id: String, db: String): Map[String, Any] = DB.withSession {
val columns = MTable.getTables(None, None, None, None).list.filter(_.name.name == "myTable").head.getColumns.list.map(_.column)
val result = sql"""SELECT * FROM #$db.myTable WHERE id=$id""".as[List[Any]].firstOption.map(columns zip _ toMap).get
}
MTable.getTables
DB.withSession
データベースが選択されていると想定しているため、この場合は機能しないようですが、そうではありません。どうすればこれを機能させることができますか?