maxdb_affected_rows
(PECL)
maxdb_affected_rows
(no version information, might be only in CVS)
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 (méthode)
class
maxdb {
int affected_rows
}
maxdb_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 :
Affected rows (INSERT): 15
Affected rows (UPDATE): 15
Affected rows (DELETE): 0
Affected rows (SELECT): 15 |