Skip to content

$sql.msql

Description

Exécute une requête SQL sur la base de données et retourne une matrice de résultats.

Note

Ewt met fournit une méthode $sql.mselect qui est plus indiquée pour les extractions de valeurs.

Il est recommandé d'utiliser cette dernière car le moteur n'a pas à faire de contrôles supplémentaires pour déterminer le type de la requête.

Syntaxe

$sql.msql( query [ , data [ , option ] ] )

Paramètres

query string / pojo
Requête à évaluer OU référence de prepared statement obtenue par $sql.prepareStatement.
data array / map / string / number / date / time / timestamp / file

Jeu de données à passer à la requête (dans le cas où la requête utilise la notation des prepared statements - ce qui est recommandé)

Le paramètre peut prendre plusieurs formes en fonction de la requête sur laquelle il doit s'appliquer:

  • Valeur null: La requête n'attend pas de paramètre ou n'utilise pas la syntaxe des prepared statement
  • Valeur litérale unique: La requête n'attend qu'un seul paramètre de type simple (string, number, date, time, timestamp ou file)
  • Tableau 1D: Dans ce cas, les valeurs du tableau sont reprises dans l'ordre comme valeurs pour le prepared statement.
  • Tableau 2D (tableau de tableau 1D) : La méthode comprend que l'on souhaite évaluer plusieurs fois la requête. Elle boucle sur les lots de données dans l'ordre et évalue la requête avec chacun des lots disponibles. Par exemple, si le tableau vaut [[1,2],[3,4]], la méthode va évaluer la requête 2 fois : la première fois avec les valeurs 1 et 2, et la seconde fois avec les valeur 3 et 4.
  • Map : Ce cas s'applique si la requête référence des paramètres nommés.
  • Tableau de map : Cette syntaxe permet de passer plusieurs jeux de données à la fois, en utilisant la notation avec des paramètres nommés. Dans ce cas, la méthode est évaluée autant de fois qu'il y a de maps dans le tableau.

Veuillez prendre connaissance de la note traitant de la valeur null dans la documentation de $sql.select.

options map
Map d'options supplémentaires. Voir $sql.mselect pour le détail.

Retour

Matrice (ou tableau de tableaux) contenant le résultat.

Exemple

1
$sql.msql("select idPersonne, nom, prenom from Personne where nom=?", [ 'Dupont' ]);