次のコードを使用して、mysql テーブルからアイテムを要求します (アカウント クラスは、データベース フィールドを表すケース クラスです)。
val res = Queryable[Account].map(_.name)
val db = Database.forURL("jdbc:mysql://localhost:3306/databasename", driver = "com.mysql.jdbc.Driver", user="username", password="password")
val backend = new SlickBackend(MySQLDriver, AnnotationMapper)
db withSession {
val r=backend.toList(res)
println(r.toString)
}
この線
val r=backend.toList(res)
次の例外をスローします。
[ToolBoxError: reflective typecheck has failed: ambiguous implicit values: both value StringCanBuildFrom in object Predef of type => scala.collection.generic.CanBuildFrom[String,Char,String] and method conforms in object Predef of type [A]=> <:<[A,A] match expected type T]
その理由は何ですか?Scala 2.10.0-RC1 と Slick 0.11.2 を使用しています。
Account クラスは次のようになります。
@table("account")
case class Account (
@column("ID") id: Long,
...
@column("Name") name: String,
...
)