Manuel PHP
Précédent |  | Suivant

# PDO::exec

(no version information, might be only in CVS)

PDO::exec -- Exécute une requête SQL et retourne le nombre de lignes affectées

## Description

int PDO::exec ( string statement )

PDO::exec() exécute une requête SQL dans un appel d'une seule fonction, retourne le nombre de lignes affectées par la requête.

PDO::exec() ne retourne pas de résultat pour une requête SELECT. Pour une requête SELECT dont vous auriez besoin une seule fois dans le programme, utilisez plutôt la fonction PDO::query(). Pour une requête dont vous auriez besoin plusieurs fois, préparez un objet PDOStatement avec la fonction PDO::prepare() et exécutez la requête avec la fonction PDOStatement::execute().

## Liste de paramètres

statement

  La requête à préparer et à exécuter.

## Valeurs de retour

PDO::exec() retourne le nombre de lignes qui ont été modifiées ou effacées pour la requête SQL qui vous exécutez. Si aucune ligne n'est affectée, la fonction PDO::exec() retournera 0.

Avertissement
Cette fonction peut retourner `FALSE`, mais elle peut aussi retourner une valeur équivalent à `FALSE`, utilisable dans une condition if simple. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.

L'exemple suivant se fonde inexactement sur la valeur retournée par PDO::exec(), où une requête qui n'affecte aucune lignes revient à appeler die() :

`<?php $db->exec() or die($db->errorInfo()); ?>`

## Exemples

Exemple 1. Exécution d'une requête DELETE

Compte le nombre de lignes effacées pour une requête DELETE avec aucune clause WHERE.

`<?php $dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2'); /* Effacement de toutes les lignes de la table FRUIT */ $count = $dbh->exec("DELETE FROM fruit WHERE couleur = 'rouge'"); /* Retourne le nombre de lignes effacées */ print("Retourne le nombre de lignes effacées :\n"); print("Effacement de $count lignes.\n"); ?>`

L'exemple ci-dessus va afficher :

    Retourne le nombre de lignes effacées :
    Effacement de 2 lignes.

## Voir aussi

PDO::prepare()
PDO::query()
PDOStatement::execute()

Précédent | Sommaire | Suivant
PDO::errorInfo | Niveau supérieur | PDO::getAttribute