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

LAST_INSERT_ID() renvoie toujours 0 (RMySQL) - problème de connexion séparé

Vous insérez NULL valeurs dans la colonne Clé primaire. Étant donné que vous ne pouvez pas avoir deux lignes avec le même PK, vous n'insérez probablement pas de données réelles (ce qui est probablement aussi une erreur que vous souhaitez détecter). Essayez :

dbSendQuery(con, "INSERT INTO t VALUES(5);")

L'exécution devrait vous donner deux valeurs différentes pour last_insert_id.

Édit :mal compris. Voir ici pour les détails sur LAST_INSERT_ID . Réponse révisée :si vous ne spécifiez pas de valeur dans un AUTO_INCREMENT colonne, puis vous devriez obtenir un LAST_INSERT_ID valeur renvoyée. Dans ce cas, essayez :

INSERT INTO t DEFAULT VALUES