Teiid 的 groovy 脚本(管理员 Shell)错误

Error on groovy script (Admin Shell) for Teiid

我有这个 teiid.groovy 脚本可以在 Teiid VDB 上执行 SQL 查询:

sql=connect(${jdbc:teiid:PREVIEW_d3cd3bd1-7b0a-4ca0-94f9-84e37ce7b106_iCare_P5_project.1@mm://localhost:31000}, {$user1}, ${user2014!});  
sql.execute("select * from ( exec "iCare_P5_Resident_Model"."iCare_P5_Resident_Proc"() ) AS X_X");  
sql.close();

当我使用

执行它时
./adminshell.sh . /path/to/file/teiid.groovy

我收到这个错误;

FATAL: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
groovysh_parse: 2: expecting '}', found 'b0a' @ line 2, column 44.
{jdbc:teiid:PREVIEW_d3cd3bd1-7b0a-4ca0-9
                             ^

1 error

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
groovysh_parse: 2: expecting '}', found 'b0a' @ line 2, column 44.
{jdbc:teiid:PREVIEW_d3cd3bd1-7b0a-4ca0-9
                             ^

我做错了什么?提前谢谢你。

您在字符串及其内容中使用了双引号。只需将行更改为:

sql.execute('select * from ( exec "iCare_P5_Resident_Model"."iCare_P5_Resident_Proc"() ) AS X_X')

此外,第一行不是 groovy。也许试试

sql = connect('jdbc:teiid:PREVIEW_d3cd3bd1-7b0a-4ca0-94f9-84e37ce7b106_iCare_P5_project.1@mm://localhost:31000', 'user1', 'user2014')