我在
Scala项目中使用
slick来查询某些表.
//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) }
我注意到schema.table的名字出现在“”中,所以语句是:
select x2."id",x2."street",x2."number",x2."zipcode",x2."country" from "assetxs.address" x2
这当然不起作用(我试图在PostgreSQL工具中运行它,我需要从表名中删除“”才能使其工作.
你可以告诉我,如果在使用表格名称时有任何查询中有没有包含“”的光滑选项?
最后我能够解决这个问题.
我仅指定表名:
对象地址扩展表[Address](“address”)
并且在搜索时更改我的postgresql conf以包含我的模式(似乎只是在公共模式上看):
search_path =’“$user”,assetxs,public’
现在它的工作.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。