我使用postgreSQL / pentaho CDE。我需要在查询中将参数作为架构前缀进行传输。我需要运行以下查询:select * from peredelkino_public.protocol
我在Pentaho中使用了自定义参数(名为“ selector_par”),在名为“ Javascript代码”的属性中我编写了“ peredelkino_public.protocol”。
然后,我像这样在组件'sql over sqlJndi'中更改了sql查询:select * FROM (${selector_par})
但是此查询不起作用!我收到消息“错误处理组件”。如何在查询中传输模式前缀?
答案 0 :(得分:0)
检查Replace variables in script
。
注意:如果参数selector_par
不存在或拼写错误,则可能会出现难以理解的错误消息。
答案 1 :(得分:0)
您不能。
CDE只能使用JDBC参数,而不能在from子句中使用。
如果绝对需要这样做,则应在CDE中使用Kettle数据源,因为PDI允许在SQL查询的任何部分中使用任何变量。
但是请确保清理输入内容。诸如此类的可变替代品是黑客的金矿。