0
나는 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)
}
라인 (Account 클래스는 데이터베이스 필드를 나타내는 경우 클래스입니다)
[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]
그것에 대한 이유가 될 수 무엇 :
val r=backend.toList(res)
는 다음과 같은 예외가 발생합니다 ? Scala 2.10.0-RC1과 Slick 0.11.2를 사용하고 있습니다.
@table("account")
case class Account (
@column("ID") id: Long,
...
@column("Name") name: String,
...
)
잘 모르겠지만 "db.withSession {..."시도하십시오 – virtualeyes
차이점을 만들지 마십시오 : ( – Heinzi
slick에 익숙하지 않지만이 toList 메소드는 무엇입니까? 컴파일러에게 예상하고 있다고 명시 적으로 말할 수 있습니까? List [Account]? ScalaQuery에서 list [Foo] (someQuery)와 같은 일을합니다. list는 쿼리에서 SQ의 list 메소드를 호출하고 주어진 T로 캐스트하는 도우미 메소드입니다. typesafe가 아니지만 매우 편리합니다 .... – virtualeyes