我想学习如何在GString中转义点,所以groovy(1.8)不会将它视为sql.execute中变量的一部分.我有以下代码:
Map<String, String> dbSettings = [schemaName:"testSchema"];
String myDbPrefix = dbSetting.schemaName + ".";
sql.execute "DELETE FROM ${myDbPrefix}myTable"
我收到了这个错误:
Ignoring groovy.lang.MissingPropertyException: No such property: myTable for class: java.lang.String
清楚地表明.被解释为变量${myDbPrefix}的一部分.
最佳答案 逃避嵌入变量有帮助吗?
sql.execute "DELETE FROM ${Sql.expand myDbPrefix}myTable"