此处是一个快速的常规语法问题:
我正在使用Groovy SQL功能(Groovy 2.4)
我的模式包含短划线,例如"SAMPLE-SCHEMA"
,而我的表称为"SAMPLE_TABLE"
当我运行以下命令时,我发现该关系不存在。 我正在使用正确的驱动程序来运行Postgres 9.6。
def sql = Sql.newInstance(...)
sql.eachRow('SELECT SAMPLE_COLUMN FROM \"SAMPLE-SCHEMA\".SAMPLE_TABLE') {
row -> // do something with row here
}
如果我查询另一个没有破折号的架构,它将无法正常工作。
异常消息是:
Caught: org.postgresql.util.PSQLException: ERROR: relation "SAMPLE-SCHEMA.SAMPLE_TABLE" does not exist
如何调整查询以使其正常工作?谢谢
答案 0 :(得分:1)
好吧,我找到了答案,postgresql中的模式区分大小写,所以我误将其称为“ SAMPLE-SCHEMA”,而应该是“ sample-schema”。
我不会删除此问题,因为它可能会对某人有所帮助