我有以下查询:
SELECT
blah
FROM
"PUBLIC"."MYACTIVITY" MYACTIVITY
问题是,不同环境的模式名称不同。我尝试制作
"PUBLIC"
像这样的参数:SELECT
blah
FROM
"$P{schemaName}"."MYACTIVITY" MYACTIVITY
设置时
schemeName
在我编译 params 中的报告之前,但无论我做什么,或将默认值设置为什么,我都会收到以下错误:Error:SQL problems:invalid schema name: ? in statement [SELECT blah FROM "?"."MYACTIVITY" MYACTIVITY
如何正确参数化此报告的架构名称?
最佳答案
尝试使用 $P!{schemaName}
.注意感叹号。在值中使用双引号:
SELECT
blah
FROM
$P!{schemaName}."MYACTIVITY" MYACTIVITY
和:
让
schemaName
= "PUBLIC"
(包括引号)。$P{}
替换提供解释值,而 $P!{}
使用文字值。您可以使用 $P!{}
更改查询本身。
关于jasper-reports - iReport - 参数化架构名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6698763/