【发布时间】:2013-11-27 16:24:32
【问题描述】:
我的 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 选择一个数据库,但事实并非如此。我该如何完成这项工作?
【问题讨论】:
标签: scala playframework playframework-2.0 slick play-slick