Fonctions MaxDB
maxdb_autocommit
Fonctions MaxDB
PHP Manual

# maxdb_affected_rows

# maxdb->affected_rows

(PECL maxdb >= 1.0)

maxdb_affected_rows -- maxdb->affected_rows — Récupère le nombre de lignes affectées par la dernière opération MaxDB

### Description

Style procédural

int maxdb_affected_rows ( resource `$link` )

Style orienté objet

maxdb
int $affected_rows;

Retourne le nombre de lignes affectées par la dernière requête INSERT, UPDATE ou DELETE associée avec le paramètre `link` fourni. Si ce nombre ne peut pas être déterminé, cette fonction retournera -1.

> Note: Pour les requêtes SELECT, maxdb_affected_rows() fonctionne comme la fonction maxdb_num_rows().

La fonction maxdb_affected_rows() ne fonctionne qu'avec les requêtes qui modifient une table. Pour récupérer le nombre de lignes depuis une requête SELECT, utilisez plutôt la fonction maxdb_num_rows().

### Valeurs de retour

Un entier plus grand que 0 indique le nombre de lignes affectées ou récupérées. Zéro indique qu'aucune ligne n'a été mise à jour pour une requête de type SELECT, qu'aucun ligne ne correspond à une clause WHERE dans une requête ou bien qu'aucune requête n'a été exécutée. -1 indique que le nombre de lignes affectées n'a pû être déterminé.

### Exemples

Exemple #1 Style orienté objet

`<?php
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (maxdb_connect_errno()) {
printf("Echec de la connexion : %s\n", maxdb_connect_error());
exit();
}
maxdb_report (MAXDB_REPORT_OFF);
$maxdb->query("DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);
/* Insertion de lignes */
$maxdb->query("CREATE TABLE mycustomer AS SELECT * from hotel.customer");
printf("Affected rows (INSERT): %d\n", $maxdb->affected_rows);
$maxdb->query("ALTER TABLE mycustomer ADD Status int default 0");
/* Mise à jour de lignes */
$maxdb->query("UPDATE mycustomer SET Status=1 WHERE cno > 50");
printf("Affected rows (UPDATE): %d\n", $maxdb->affected_rows);
/* Effacement de lignes */
$maxdb->query("DELETE FROM mycustomer WHERE cno < 50");
printf("Affected rows (DELETE): %d\n", $maxdb->affected_rows);
/* Sélection de toutes les lignes */
$result = $maxdb->query("SELECT title FROM mycustomer");
printf("Affected rows (SELECT): %d\n", $maxdb->affected_rows);
$result->close();
/* Effacement de la table Language */
$maxdb->query("DROP TABLE mycustomer");
/* Fermeture de la connexion */
$maxdb->close();
?>`

Exemple #2 Style procédural

`<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
if (!$link) {
printf("Impossible de se connecter à localhost. Erreur : %s\n", maxdb_connect_error());
exit();
}
maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP TABLE mycustomer");
maxdb_report (MAXDB_REPORT_ERROR);
/* Insertion de lignes */
maxdb_query($link, "CREATE TABLE mycustomer AS SELECT * from hotel.customer");
printf("Nombres de lignes affectées (INSERT): %d\n", maxdb_affected_rows($link));
maxdb_query($link, "ALTER TABLE mycustomer ADD Status int default 0");
/* Mise à jour de lignes */
maxdb_query($link, "UPDATE mycustomer SET Status=1 WHERE cno > 50");
printf("Nombres de lignes affectées (UPDATE): %d\n", maxdb_affected_rows($link));
/* Effacement de lignes */
maxdb_query($link, "DELETE FROM mycustomer WHERE cno < 50");
printf("Nombres de lignes affectées (DELETE): %d\n", maxdb_affected_rows($link));
/* Sélectionne toutes les lignes */
$result = maxdb_query($link, "SELECT title FROM mycustomer");
printf("Nombres de lignes affectées (SELECT): %d\n", maxdb_affected_rows($link));
maxdb_free_result($result);
/* Effacement d'une table */
maxdb_query($link, "DROP TABLE mycustomer");
/* Fermeture de la connexion */
maxdb_close($link);
?>`

L'exemple ci-dessus va afficher quelque chose de similaire à :

    Affected rows (INSERT): 15
    Affected rows (UPDATE): 15
    Affected rows (DELETE): 0
    Affected rows (SELECT): 15

### Voir aussi

- maxdb_num_rows() - Récupère le nombre de lignes dans un résultat
- maxdb_info() - Récupère des informations sur le dernière requête exécutée

Fonctions MaxDB
maxdb_autocommit
Fonctions MaxDB
PHP Manual