jasper-reports - iReport - 参数化架构名称?

标签 jasper-reports schema ireport

我有以下查询:

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/

相关文章:

jasper-reports - 在 JasperReports 中进行比较 if else

mysql - 如何为带有促销/折扣的购物车设置数据库模式?

database - 谷歌分析数据库

jasper-reports - 在iReport中将值从子报表返回到主报表

jasper-reports - 子报告重叠 "Last Page Footer"频段

Rest v2报告执行成功,查看状态报告404错误

java - 碧 Jade 报告 : can see background image in pdf export but not in docx export

charts - 如何使用 JavaBeans 集合数据集填充图表数据?

java - 在 Java 应用程序中嵌入 XML 架构

java - 从 JAVA 生成的 PDF 使用 Jasper Reports 损坏