【问题标题】:Why groovy sql remove schema name from SQL queries?为什么 groovy sql 从 SQL 查询中删除模式名称?
【发布时间】:2011-02-28 05:56:40
【问题描述】:

我需要执行这个查询:

 Select * from my_schema.table_within_schema 

不幸的是 groogy.sql.SQL 正在删除 my_schema 并在没有架构信息的情况下执行查询:

 Select * from table_within_schema 

我想知道是否可以强制 groovy.sql.Sql 在查询中保留模式名称。

Groovy:1.7,Db:我使用需要指定模式名称的 jdbc 驱动程序。

【问题讨论】:

  • 我无法重现所描述的行为。你如何使用groovy.sql.Sql?你用的是什么数据库?

标签: sql groovy schema


【解决方案1】:

我还没有遇到这种情况,但如果你愿意,你可以“强制”groovy 使用字符串查询而不是 GString,下面是一个 mysql jdbc 示例:

Sql sql = ...(the usual) 

def query = "SELECT * from `my_schema`.mytable" 

sql.eachRow( query.toString()  ) {
// do something 
}

【讨论】:

  • 您好,您是否指定了创建 Sql 对象新实例的数据库名称?您确定您使用的是 my_schema 而不是 jdbc url 中的架构(用于调用 SQL.newInstance())吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-31
  • 1970-01-01
  • 2016-11-30
  • 2021-04-01
  • 2014-07-03
  • 2016-07-14
相关资源
最近更新 更多