maxdb_insert_id
maxdb::insert_id
(PECL maxdb >= 1.0)
maxdb_insert_id -- maxdb::insert_id — Retourne le dernier identifiant généré automatiquement par la dernière requête
Description
Style procédural
Style orienté objet
maxdb_insert_id() retourne le denier identifiant généré par une requête sur une table qui a une colonne possédant l'attribut DEFAULT SERIAL. Si la dernière requête n'était pas une requête de type INSERT ou UPDATE ou si la table modifiée n'a pas de colonne possédant un attribut DEFAULT SERIAL, cette fonction retournera zéro.
Valeurs de retour
La valeur du champs DEFAULT SERIAL qui a été mis à jour par la dernière requête. Retourne zéro s'il n'y a aucune requête précédente sur la connexion ou si la requête n'a pas mis à jour la valeur DEFAULT_SERIAL.
Note:
Si le nombre généré est plus grand que la valeur maximale pour un entier, maxdb_insert_id() retournera une chaîne de caractères.
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 mycity"); maxdb_report (MAXDB_REPORT_ERROR); $maxdb->query("CREATE TABLE mycity LIKE hotel.city"); $maxdb->query("ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL"); $query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')"; $maxdb->query($query); printf ("Le nouvel enregistrement a comme identifiant %d.\n", $maxdb->insert_id); /* Effacement de la table */ $maxdb->query("DROP TABLE mycity"); /* Fermeture de la connexion */ $maxdb->close(); ?>
Exemple #2 Style procédural
<?php $link = maxdb_connect("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($link,"DROP TABLE mycity"); maxdb_report (MAXDB_REPORT_ERROR); maxdb_query($link, "CREATE TABLE mycity LIKE hotel.city"); maxdb_query($link, "ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL"); $query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')"; maxdb_query($link, $query); printf ("Le nouvel enregistrement a comme identifiant %d.\n", maxdb_insert_id($link)); /* Effacement de la table */ maxdb_query($link, "DROP TABLE mycity"); /* Fermeture de la connexion */ maxdb_close($link); ?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Le nouvel enregistrement a comme identifiant 1.