我使用Kotlin暴露给具有大写表名的Postgres服务器进行以下SQL查询:
object Table: IntIdTable("Table") {
val tC = text("Text")
val vC = text("Value")
}
Database.connect("jdbc:postgresql://...", driver = "org.postgresql.Driver")
transaction {
logger.addLogger(StdOutSqlLogger)
val query = Table.select {
Table.id eq 5
}
query.forEach {
println( it[Table.tC] )
}
}
但我回来了:
Exception in thread "main" org.postgresql.util.PSQLException: ERROR: relation "table" does not exist
通常我只能引用表名"Table"
来使用大写的表名,但似乎无法用Kotlin Exposed做到这一点;那么有没有办法使用大写的表名防止它被小写?
答案 0 :(得分:2)
我能够通过在表字符串中使用转义引号来解决此问题,上述问题的示例如下:
object Table : IntIdTable("\"Table\"") {
答案 1 :(得分:0)
您是否可以提供整个示例并指向抛出异常的位置?从目前的代码中不清楚是谁以及如何尝试创建relation
到桌面。