Maison > base de données > tutoriel mysql > Comment transmettre des paramètres aux requêtes dans JasperReports ?

Comment transmettre des paramètres aux requêtes dans JasperReports ?

Susan Sarandon
Libérer: 2025-01-18 06:27:08
original
831 Les gens l'ont consulté

How to Pass Parameters to Queries in JasperReports?

Passer les paramètres de requête dans JasperReports

JasperReports vous permet de contrôler dynamiquement divers aspects de votre requête à l'aide de paramètres, tels que les clauses WHERE et ORDER BY. Ceci est utile lorsque vous souhaitez que les utilisateurs aient la flexibilité de spécifier la manière dont les données sont récupérées.

Syntaxe de référence des paramètres

La référence du paramètre a deux expressions syntaxiques : $P{} et $P!{}.

  • $P{paramName} est utilisé pour remplacer les paramètres dans la clause WHERE. Par exemple, si vous avez un paramètre de type java.lang.String nommé "eventName", vous pouvez l'utiliser dans la clause WHERE comme ceci :
<code class="language-sql">WHERE name=$P{eventName}</code>
Copier après la connexion
  • $P!{paramName} est utilisé pour remplacer des paramètres n'importe où dans la requête, y compris les clauses WHERE et ORDER BY. Par exemple, si vous avez un paramètre de type java.lang.String nommé "order", vous pouvez l'utiliser dans une clause ORDER BY comme ceci :
<code class="language-sql">ORDER BY $P!{order}</code>
Copier après la connexion

Gestion des types de paramètres

$P{} La syntaxe est "intelligente" et gère correctement différents types de paramètres. Par exemple, si vous avez un paramètre de type java.lang.String, le moteur remplacera $P{paramName} par une valeur entre guillemets. Si vous avez un paramètre de type java.lang.Integer, le moteur remplacera $P{paramName} par une valeur numérique.

Exemple d'utilisation

Pour passer un champ de la base de données en paramètre, vous pouvez utiliser la syntaxe $P!{}. Par exemple, la requête suivante utilise le paramètre $P!{clause} pour spécifier la clause WHERE et le paramètre $P!{order} pour spécifier la clause ORDER BY :

<code class="language-sql">SELECT name, phone, email
FROM company
WHERE $P!{clause} = $P{key}
ORDER BY $P!{order}</code>
Copier après la connexion

Dans cet exemple, le paramètre $P!{clause} est de type java.lang.String et le paramètre $P!{order} est de type java.lang.String.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal