(PHP 4 >= 4.2.0, PHP 5)
pg_query — Exécute une requête PostgreSQL
$connection
], string $query
)
pg_query() exécute la requête
query
sur la base de données spécifiée
connection
.
Si une erreur se produit et FALSE
est retourné, les détails de l'erreur
peuvent être récupérés en utilisant la fonction
pg_last_error() si la connexion est valide.
Note: Bien que
connection
puisse être omis, il n'est pas recommandé de le faire, car il peut se révéler difficile de retrouver les bogues dans les scripts.
Note:
Auparavant, cette fonction s'appelait pg_exec(). pg_exec() est toujours disponible pour des raisons de compatibilité, mais les utilisateurs sont encouragés à utiliser le nouveau nom.
connection
La ressource de connexion de la base de données PostgreSQL. Lorsque
connection
n'est pas présent, la connexion par
défaut est utilisée. La connexion par défaut est la dernière connexion
faite par pg_connect() ou pg_pconnect().
query
La requête ou les requêtes SQL à être exécutées. Lorsque plusieurs requêtes sont passées à la fonction, elles sont automatiquement exécutées comme étant une transaction, à moins qu'il y aille les commandes BEGIN/COMMIT incluses dans la requête. Cependant, l'utilisation de transactions multiples dans un seul appel de fonction n'est pas recommandée.
Les données contenues dans la requête doivent être échappées proprement.
Une ressource de résultats en cas de succès ou FALSE
si une erreur survient.
Exemple #1 Exemple avec pg_query()
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Une erreur s'est produite.\n";
exit;
}
$result = pg_query($conn, "SELECT auteur, email FROM auteurs");
if (!$result) {
echo "Une erreur s'est produite.\n";
exit;
}
while ($row = pg_fetch_row($result)) {
echo "Auteur: $row[0] E-mail: $row[1]";
echo "<br />\n";
}
?>
Exemple #2 Utilisation de pg_query() avec plusieurs requêtes
<?php
$conn = pg_pconnect("dbname=publisher");
// ces requêtes seront exécutées en tant qu'une seule transaction
$query = "UPDATE authors SET author=UPPER(author) WHERE id=1;";
$query .= "UPDATE authors SET author=LOWER(author) WHERE id=2;";
$query .= "UPDATE authors SET author=NULL WHERE id=3;";
pg_query($conn, $query);
?>