MDB_Common::queryAll()

MDB_Common::queryAll() -- Récupère le jeu de résultats dans un tableau

Synopsis

require_once 'MDB.php';

array &queryAll (string $query, array [$types = NULL], integer [$fetchmode = MDB_FETCHMODE_DEFAULT], boolean [$rekey = FALSE], boolean [$force_array = FALSE], boolean [$group = FALSE])

Description

Récupère le jeu de résultats complet d'une requête et le retourne dans un tableau. La fonction exécute la requête et libère le résultat lorsqu'elle a terminée.

Paramètres

chaîne de caractères $query

la requête SQL

array $types

si fourni, les types des colonnes du jeu de résultats seront définis pour la récupération

entier $fetchmode

le mode de récupération à utiliser

booléen $rekey

si défini à TRUE, le tableau résultant sera modifié comme suit : Si le jeu de résultats contient plus de deux colonnes, la valeur sera un tableau de valeurs depuis la colonne 2 à n. Si le jeu de résultats contient uniquemement deux colonnes, la valeur retournée sera un scalaire, avec la valeur de la seconde colonne (forcé à un tableau avec le paramètre $force_array).

booléen $force_array

utilisé uniquement si la requête retourne exactement deux colonnes. Si vaut TRUE, les valeurs du tableau retourné seront un tableau d'un seul élément plutôt qu'un scalaire.

booléen boolean $group

si vaut TRUE, les valeurs du tableau retourné seront mises dans un autre tableau. Si la même valeur de clé (dans la première colonne) se répète, les valeurs seront ajoutées à ce tableau plutôt que d'écraser les valeurs existantes.

Valeur retournée

array - un tableau ou une MDB_Error si une erreur survient.

Valeurs renvoyées

Tableau 34-1. Valeurs PEAR_Error possibles

Code erreurMessage d'erreurRaisonSolution
MDB_ERROR_NO_DB_SELECTED NULL Aucune base de données n'a été choisie. Vérifiez le DSN dans connect() .
MDB_ERROR_TRUNCATED NULL Le jeu de résultats contient moins de deux colonnes Vérifiez la requête SQL ou choisissez une autre fonction query*()
n'importe quel code erreur  Erreur spécifique à la base de données Vérifiez la section relative à la base de données dans le manuel PHP afin de détecter la raison de cette erreur. Dans la plupart des cas, une requête SQL incorrecte, i.e. utilisation d'une clause LIMIT dans une requête destinée à une base de données Oracle.

Note

Cette fonction ne peut pas être appelée de façon statique.

Voir aussi

query() , limitQuery() , prepareQuery() , executeQuery() , queryRow() , queryOne() , queryCol()