Mysql
 sql >> Base de données >  >> RDS >> Mysql

La récupération du dernier identifiant d'insertion affiche un numéro erroné

last_insert_id() n'a aucun rapport avec des tables spécifiques. Dans la même connexion, toutes les tables partagent la même chose.

Vous trouverez ci-dessous une démo.

Démo :

mysql> create table t1(c1 int primary key auto_increment);
Query OK, 0 rows affected (0.11 sec)

mysql> create table t2(c1 int primary key auto_increment);
Query OK, 0 rows affected (0.06 sec)

mysql> insert into t1 values(null);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t2 values(4);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t2 values(null);
Query OK, 1 row affected (0.02 sec)

mysql> select last_insert_id() from t1;
+------------------+
| last_insert_id() |
+------------------+
|                5 |
+------------------+
1 row in set (0.00 sec)