Bonjour à tous,
Sur un PC, j'ai installé easyPHP (version 3.0) pour faire tourner une application en PHP. J'ai intégré un dump de base de données avec la structure des tables et du contenu. Ensuite, j'ai exécuté une mise à jour de mon application. Cette mise à jour est exécutée par l'appli. Il s'agit d'un fichier contenant des requêtes SQL qui sont récupérées une par une et exécutées avec mysql_query.
Cette mise à jour a planté en cours de route sur une requête toute bête, un insert dans une table 'entreprise'. L'erreur affichée par l'appli était : duplicate entry '100085' for key 'primary'.
Cette clé primaire est mon ID, un auto increment. Le champ est un int (10) unsigned, je peux donc aller jusqu'à un peu plus de 4 milliard au niveau de mon ID.
En browsant la table avec phpMyAdmin, je constate qu'il n'y a pas de clé 100085. Ca s'arrête juste avant, à 100084.
Maintenant, plus fort : je prends cette requête et je la lance sous phpMyAdmin : elle passe sans problème.
Et là, sans les mains : je reprends le même dump, j'installe mon appli sur un autre poste, même version d'easyphp, je lance ma mise à jour : ça passe.
J'ai réinstallé easyphp sur la première machine, ça n'a rien changé.
Est-ce que quelqu'un a une idée de ce qui se passe ?
(une précision : la version d'easyphp n'est pas modifiable, je dois conserver la 3.0)
Merci d'avance,
Partager