Forum und email

maxdb_insert_id

maxdb->insert_id

(PECL maxdb:1.0-7.6.00.38)

maxdb->insert_id — Retourne le dernier identifiant généré automatiquement par la dernière requête

Description

Style procédural

mixed maxdb_insert_id ( resource $link )

Style orienté objet (méthode)

maxdb
mixed$insert_id;

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

Example#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();
?>

Example#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 :

Le nouvel enregistrement a comme identifiant 1.