1
我想用jOOQ Scala中的字符串插值特徵,例如resultQuery"SELECT * FROM objects"
:如何在jOOQ中使用Scala的字符串插值?
// setup connection
val con = DriverManager.getConnection(url, userName, password)
// create DSLContext
val dsl = DSL.using(con, SQLDialect.POSTGRES_9_4)
// normal use of DSLContext
dsl.resultQuery("SELECT * FROM objects")
// intented use of string interpolation
val q = resultQuery"SELECT * FROM objects"
val result = q.fetch()
println(result)
運行該代碼(沒有任何外部結構等)在下面的例外的結果:
Exception in thread "main" org.jooq.exception.DetachedException: Cannot execute query. No Connection configured
at org.jooq.impl.AbstractQuery.execute(AbstractQuery.java:312)
at org.jooq.impl.AbstractResultQuery.fetch(AbstractResultQuery.java:305)
...
看來SQLInterpolation
正在使用默認設置。我試圖通過設置DSLContext
以及Configuration
爲implicits提供這些設置,但我仍然收到了同樣的異常:
implicit val dsl = DSL.using(con, SQLDialect.POSTGRES_9_4)
implicit val config = new DefaultConfiguration().derive(con)
.derive(SQLDialect.POSTGRES_9_4)
如何正確地提供我的設置(連接,方言等)的字符串插值?
這是缺失的一環。我不知道我錯過了那一個。 – r0estir0bbe