2

Groovy には興味深い問題があります。誰かが私を助けてくれることを願っています。

基本的にGroovy Sqlを使用しています。異なるデータベースで複数のテーブルを選択する必要があります。私の 2 番目のクエリは、他のクエリに依存しています"select * from table1-in-db1 where key = ${result-of-other-query1}。関数内でこれをハードコーディングすると、Groovy は正常に動作します。ただし、私の問題は、SQLがxmlファイルで定義されており、関数に文字列として渡された後、取得したことです。スコープ内で呼び出された変数があっても、インライン変数を相互運用することはもうありませんresult-of-other-query1

sudo コードの一部を次に示します。

doQuery(String squery, String tquery) {

//query db1.
//squery = "select key1 from table1"
db1.rows(squery).each {row->

    //query db2.        
    //tquery ="select * where myKey ='${row.key1}'"
    println tquery

    tdb.rows(tquery).each { row1 ->
       .... // get error here, coz groovy did not replace ${row.key1}       
    }   
  }
}

インライン変数が文字列として渡された場合でも、Groovy にインライン変数を置き換えるように指示する方法はありますか?

事前にご協力いただきありがとうございます

4

2 に答える 2