# Fonctions PostgreSQL

## Notes

> Note:

> Les fonctions ne sont pas toutes supportées par toutes les versions. Cela dépend de votre version de libpq (la bibliothèque cliente de PostgreSQL C) et comment libpq est compilée. Si les extensions PHP PostGreSQL sont manquantes, alors c'est parce que votre version de libpq ne les supporte pas.

> Note:

> La plupart des fonctions PostgreSQL acceptent le paramètre `connection` comme premier paramètre optionnel. S'il n'est pas fourni, la dernière connexion ouverte est utilisée. Si elle n'existe pas, les fonctions retournent `false`.

> Note:

> PostgreSQL transforme automatiquement tous les identifiants (par exemple, les noms de tables/colonnes) en minuscule à la création d'objet et lors de la requête. Pour forcer l'utilisation des caractères majuscules ou minuscules et majuscules des identifiants, vous devez échapper l'identifiant en utilisant des guillemets ("").

> Note:

> PostgreSQL n'a pas de commande spéciale pour récupérer les schémas des bases de données (par exemple, toutes les tables dans la base de données). À la place, il y a un schéma standard nommé `information_schema` dans PostgreSQL 7.4 et supérieure contenant les vues du système avec toutes les informations nécessaires, dans un format de requête facile. Voyez la » Documentation PostgreSQL pour tous les détails.

## Sommaire

- pg_affected_rows — Retourne le nombre de lignes affectées
- pg_cancel_query — Annule une requête asynchrone
- pg_client_encoding — Lit l'encodage du client
- pg_close — Termine une connexion PostgreSQL
- pg_connect — Établit une connexion PostgreSQL
- pg_connect_poll — Test le statut d'une tentative de connexion asynchrone PostgreSQL en cours
- pg_connection_busy — Vérifie si la connexion PostgreSQL est occupée
- pg_connection_reset — Relance la connexion au serveur PostgreSQL
- pg_connection_status — Lit le statut de la connexion PostgreSQL
- pg_consume_input — Lit l'entrée de la connexion
- pg_convert — Convertit des valeurs d'un tableaux associatifs en une forme convenable pour des requêtes SQL
- pg_copy_from — Insère des lignes dans une table à partir d'un tableau
- pg_copy_to — Copie une table dans un tableau
- pg_dbname — Retourne le nom de la base de données PostgreSQL
- pg_delete — Efface des lignes PostgreSQL
- pg_end_copy — Synchronise avec le serveur PostgreSQL
- pg_escape_bytea — Protège une chaîne pour insertion dans un champ bytea
- pg_escape_identifier — Protège un identifiant pour l'insertion dans un champ texte.
- pg_escape_literal — Protège une requête SQL littérale à insérer dans un champ texte
- pg_escape_string — Protège une chaîne de caractères pour une requête SQL
- pg_execute — Exécute une requête préparée PostGreSQL
- pg_fetch_all — Lit toutes les lignes d'un résultat
- pg_fetch_all_columns — Récupère toutes les lignes d'une colonne de résultats particulière en tant que tableau
- pg_fetch_array — Lit une ligne de résultat PostgreSQL dans un tableau
- pg_fetch_assoc — Lit une ligne de résultat PostgreSQL sous forme de tableau associatif
- pg_fetch_object — Lit une ligne de résultat PostgreSQL dans un objet
- pg_fetch_result — Retourne les valeurs d'un résultat
- pg_fetch_row — Lit une ligne dans un tableau
- pg_field_is_null — Teste si un champ PostgreSQL est à null
- pg_field_name — Retourne le nom d'un champ PostgreSQL
- pg_field_num — Retourne le numéro d'une colonne
- pg_field_prtlen — Retourne la taille imprimée
- pg_field_size — Retourne la taille interne de stockage d'un champ donné
- pg_field_table — Retourne le nom ou l'oid d'une table
- pg_field_type — Retourne le type d'un champ PostgreSQL donné par index
- pg_field_type_oid — Retourne le type ID (OID) pour le numéro du champ correspondant
- pg_flush — Envoi les données de requête sortante sur la connexion
- pg_free_result — Libère la mémoire
- pg_get_notify — Lit le message SQL NOTIFY
- pg_get_pid — Lit l'identifiant de processus du serveur PostgreSQL
- pg_get_result — Lit un résultat PostgreSQL asynchrone
- pg_host — Retourne le nom d'hôte
- pg_insert — Insère un tableau dans une table
- pg_last_error — Lit le dernier message d'erreur sur la connexion
- pg_last_notice — Retourne la dernière note du serveur PostgreSQL
- pg_last_oid — Retourne l'identifiant de la dernière ligne
- pg_lo_close — Ferme un objet de grande taille PostgreSQL
- pg_lo_create — Crée un objet de grande taille PostgreSQL
- pg_lo_export — Exporte un objet de grande taille vers un fichier
- pg_lo_import — Importe un objet de grande taille depuis un fichier
- pg_lo_open — Ouvre un objet de grande taille PostgreSQL
- pg_lo_read — Lit un objet de grande taille
- pg_lo_read_all — Lit un objet de grande taille en totalité
- pg_lo_seek — Modifie la position dans un objet de grande taille
- pg_lo_tell — Retourne la position courante dans un objet de grande taille PostgreSQL
- pg_lo_truncate — Tronque un objet large
- pg_lo_unlink — Efface un objet de grande taille PostgreSQL
- pg_lo_write — Écrit un objet de grande taille PostgreSQL
- pg_meta_data — Lit les métadonnées de la table PostgreSQL
- pg_num_fields — Retourne le nombre de champ
- pg_num_rows — Retourne le nombre de lignes PostgreSQL
- pg_options — Retourne les options PostgreSQL
- pg_parameter_status — Consulte un paramètre de configuration courant du serveur
- pg_pconnect — Établit une connexion PostgreSQL persistante
- pg_ping — Ping la connexion à la base
- pg_port — Retourne le numéro de port
- pg_prepare — Envoie une requête au serveur pour créer une instruction préparée avec les paramètres donnés et attend l'exécution
- pg_put_line — Envoie une chaîne au serveur PostgreSQL
- pg_query — Exécute une requête PostgreSQL
- pg_query_params — Envoie une commande au serveur et attend le résultat, avec les capacités de passer des paramètres séparément de la commande texte SQL
- pg_result_error — Lit le message d'erreur associé à un résultat
- pg_result_error_field — Retourne un champ individuel d'un rapport d'erreur
- pg_result_memory_size — Retourne la quantité de mémoire allouée pour un résultat de requête
- pg_result_seek — Définit la position de la ligne dans un résultat
- pg_result_status — Lit le statut du résultat
- pg_select — Effectue une sélection PostgreSQL
- pg_send_execute — Envoie une requête pour exécuter une requête préparée avec des paramètres donnés, sans attendre le(s) résultat(s)
- pg_send_prepare — Envoie une requête pour créer une requête préparée avec les paramètres donnés, sans attendre la fin de son exécution
- pg_send_query — Exécute une requête PostgreSQL asynchrone
- pg_send_query_params — Envoie une commande et sépare les paramètres au serveur sans attendre le(s) résultat(s)
- pg_set_chunked_rows_size — Définit les résultats de la requête à récupérer en mode chunk
- pg_set_client_encoding — Choisit l'encodage du client PostgreSQL
- pg_set_error_context_visibility — Détermine la visibilité des messages d'erreur du contexte retournés par pg_last_error et pg_result_error
- pg_set_error_verbosity — Détermine la le degré des messages retournés par pg_last_error et pg_result_error
- pg_socket — Récupère un gestionnaire de lecture seul sur le socket sous-jacent d'une connexion PostgreSQL
- pg_trace — Active le suivi d'une connexion PostgreSQL
- pg_transaction_status — Retourne le statut de la transaction en cours du serveur
- pg_tty — Retourne le nom de TTY associé à la connexion
- pg_unescape_bytea — Supprime la protection d'une chaîne de type bytea
- pg_untrace — Termine le suivi d'une connexion PostgreSQL
- pg_update — Modifie les lignes d'une table
- pg_version — Retourne un tableau avec les versions du client, du protocole et du serveur (si disponible)