16.5 Comment lire la valeur d'une colonne de type AUTO_INCREMENT avec ODBC

Un problème classique est de lire la valeur générée lors de la dernière opération d'auto-incrément, lors qu'ne requête INSERT. Avec ODBC, vous pouvez toujours faire ceci : ( on suppose que votre auto est le champs AUTO_INCREMENT):

INSERT INTO foo (auto,text) VALUES(NULL,'text');
SELECT LAST_INSERT_ID();

Ou bien, si vous allez insérer cet ID dans une autre de table, vous pouvez faire ceci :

INSERT INTO foo (auto,text) VALUES(NULL,'text');
INSERT INTO foo2 (id,text) VALUES(LAST_INSERT_ID(),'text');

Pour utiliser certaines applications ODBC (au moins Delphi et Access), la requête suivante peut servir à retrouver une ligne récemment insérée :

SELECT * FROM nom_table WHERE auto IS NULL;