首頁 > 資料庫 > mysql教程 > 如何在 JasperReports 中傳遞動態 SQL'IN”參數清單?

如何在 JasperReports 中傳遞動態 SQL'IN”參數清單?

Mary-Kate Olsen
發布: 2024-12-31 08:15:10
原創
569 人瀏覽過

How to Pass a Dynamic SQL

在JasperReports 傳遞SQL「IN」參數清單

使用「IN」謂詞透過SQL 查詢產生JasperReports 時,動態參數賦值可以使用「IN」謂詞透過SQL 查詢產生JasperReports 時,動態參數賦值可以透過Java編程來實現。讓我們探討一下如何動態設定「roles」參數的值。

相關查詢:

SELECT customer_name AS NAME,
       id_customer AS ID
  FROM customer
 WHERE customer_role IN ($P{roles})
登入後複製

Java 中的參數分配

JasperReports 提供了一個特殊變數 $X,用於動態設定參數。若要將值清單指派給「roles」參數,請使用下列語法:

select * from customer where $X{IN,customer_role,roles}
登入後複製

以下是如何在Java 中以程式設定參數值的範例:

// Get a JasperReports instance
JasperPrint jasperPrint = jasperReport.fill(parametersMap, dataSource);

// Create a new parameter list
java.util.List<JRParameter> updatedParameters = new ArrayList<>();

// Add the "roles" parameter with the updated value
updatedParameters.add(new JRParameter("roles", ArrayList.class, roles));

// Set the parameter list
jasperPrint.setParameters(updatedParameters);
登入後複製

附加說明

  • 角色列表應該是類型ArrayList。
  • 有關參數處理的更多詳細信息,請參閱 JasperReports 文件。

以上是如何在 JasperReports 中傳遞動態 SQL'IN”參數清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板