저는 스칼라 프로젝트에서 slick을 사용하여 일부 테이블을 쿼리합니다. 나는 그것이 작동하지 않습니다이 테이블의 쿼리를 사용하는 경우PostgreSQL을 사용할 때 문제가 있습니다.
//define table
object Addresses extends Table[Address]("assetxs.address") {
def id = column[Int]("id", O.PrimaryKey)
def street = column[String]("street")
def number = column[String]("number")
def zipcode = column[String]("zipcode")
def country = column[String]("country")
def * = id ~ street ~ number ~ zipcode ~ country <> (Address, Address.unapply _)
}
(그것은 내 테이블을 찾을 수 없습니다 말한다) 그래서 같은 쿼리에서 추가 및 인쇄했다 :
implicit val session = Database.forURL("jdbc:postgresql://localhost:5432/postgres", driver = "org.postgresql.Driver", user="postgres", password="postgres").createSession()
session.withTransaction{
val query = Query(Addresses)
println("Addresses: " + query.selectStatement)
}
가 나는 것으로 나타났습니다 스키 마 이름은 ""
에 나타납니다 그래서 문은 다음과 같습니다
select x2."id", x2."street", x2."number", x2."zipcode", x2."country"
from "assetxs.address" x2
내가 PostgreSQL의 도구를 실행하려고했습니다 (작동하지 않습니다 물론 이는 내가을 제거하기 위해 필요에서
테이블 이름 작동하도록.
테이블 이름을 사용할 때 어떤 검색어에 ""
이 포함되지 않는 매끄러운 옵션이 있으면 알려주실 수 있습니까?
가 있습니까 이것이 당신이 가지고있는 문제인지 확인하십시오. 인용 부호가없는 식별자는 PostgreSQL에서 소문자로 변환됩니다. 예에서는 따옴표를 제거하면 동일한 쿼리가 생성됩니다. –
@AntsAasma, 나는 "assetxs.address"가 두통을주는 사람이라고 확신합니다. –
http://stackoverflow.com/questions/6720626/how-do-i-specify-a-postgresql-schema-in-scalaquery –