pg_select
Effectue une sélection PostgreSQL
&reftitle.description;
mixedpg_select
resourceconnection
stringtable_name
arrayassoc_array
intoptionsPGSQL_DML_EXEC
intresult_typePGSQL_ASSOC
pg_select sélectionne les enregistrements par
assoc_array qui est au format
champ=>valeur. Lorsque la requête
réussit, elle retourne un tableau contenant tous les enregistrements et
champs qui vérifient la condition spécifiée par
assoc_array.
Si options est fournit,
pg_convert est appliqué à
assoc_array avec les drapeaux fournit.
Par défaut pg_delete passe des valeurs brutes. Les valeurs
doivent être échappé ou l'option PGSQL_DML_ESCAPE doit être fournit.
PGSQL_DML_ESCAPE met des guillemets et échappe les paramètres/idantifiants.
Par conséquent, les noms de table/colonnes doivent être sensible à la casse.
Notez que ni l'échappement ni les requêtes préparer peuvent protéger des
requêtes LIKE, JSON, Tableaux, Regex, etc. Ces paramètres devraient être
traité en fonction de leur contexte. C'est à dire échapper/valider les valeurs.
&reftitle.parameters;
connection
Ressource de connexion de base de données PostgreSQL.
table_name
Nom de la table dans laquelle on sélectionne les lignes.
assoc_array
Un &array; à qui les clés sont les noms des champs dans la table
table_name et à qui les valeurs sont les
conditions que la ligne doit vérifier pour être récupérée.
options
N'importe quelle de PGSQL_CONV_FORCE_NULL,
PGSQL_DML_NO_CONV,
PGSQL_DML_ESCAPE,
PGSQL_DML_EXEC,
PGSQL_DML_ASYNC ou
PGSQL_DML_STRING combinée. Si
PGSQL_DML_STRING fait partie de
options alors la requête est retournée sous
forme de chaîne de caractères. Lorsque la constante
PGSQL_DML_NO_CONV ou la constante
PGSQL_DML_ESCAPE est définie, aucun appel à la fonction
pg_convert ne sera effectué en interne.
&reftitle.returnvalues;
&return.success; Retourne une &string; si
PGSQL_DML_STRING est passé via
options.
&reftitle.examples;
Exemple avec pg_select
]]>
&reftitle.changelog;
&Version;
&Description;
7.1.0
Le paramètre result_type a été ajouté.
5.6.0
La fonction n'est plus expérimentale. Ajout de la constante
PGSQL_DML_ESCAPE ainsi que du support des données
de type &true;/&false; et &null;.
5.5.3/5.4.19
Les injections SQL directes dans table_name
et les injections SQL indirectes via les identifiants ont été résolues.
&reftitle.seealso;
pg_convert