Page 1 sur 1

Prob. Autoincrement dans phpMyAdmin

Posté : 03 mai 2006, 09:49
par pixfacto
Bonjour,

Comment puis-je choisir le nombre auquel l'autoincrement doit commencer dans phpMyAdmin 2.4.0.

Mon dernier article insérer a l'id 279 et lorsque j'encode un nouvel article, il pass directement à 2868!
J'ai régler le prob. en local car j'ai une version 2.5.3 de phpMyAdmin.

Merci
Pierre

Posté : 03 mai 2006, 09:58
par ouckileou
Désolé je ne vais pas répondre à la questions mais t'en poser une :
est-ce si important que ça ?

Normalement ton ID n'est qu'un code unique, un identifiant
Du moment que tu n'en as pas 2 pareils, on s'en fout de sa valeur

Et pour info, phpMyAdmin n'est qu'une interface, permettant de manipuler MySQL, qui est un SGBD

Posté : 03 mai 2006, 10:03
par Cyrano
J'ajouterais un détail : un identifiant utilisé ne sera pas utilisé à nouveau par MySQL même si la ligne a été supprimée entre temps : tu ajoutes une ligne dont l'identifiant est par exemple 12. Plus tard, tu supprimes cette ligne. La prochaine insertion aura pour identifiant 13 et non 12 même si aucune ligne ne correspond plus à rien pour l'identifiant 12.

Posté : 03 mai 2006, 10:05
par pixfacto
Mon prob. c'est que j'ai deux tables : photo et article.
Lors de l'insertion d'un article et de sa photo, les id doivent être identitque pour que ça ne déconne pas lorsque que je souhaite un agrandissment de la photo. Car on utilise l'id de l'article et si pas les même id que la photo, la photo agrandie ne correspond pas avec la vignette.

Pierre

Posté : 03 mai 2006, 10:09
par ouckileou
Et bien la représentation de ça, c'ets ce schéma :
articles(id_article, nom_article)
photos(id_photo, nom_photo, id_article#)
souligné : les clés primaires, les identifiants, que tu peux mettre en auto_increment
le # : clé étrangère, qui fait le lien entre 2 tables

Attention :
ce schéma signifie
1 article est lié à 1 ou plusieurs photos
1 photo est liée à 1 seul article

SI tu te sert des identifiants des 2 tables pour faire la relation entre elles, ça va devenir ingérable quand tu voudras faire des modifications par exemple

Posté : 03 mai 2006, 10:13
par Cyrano
Comme l'a mentionné ouckileou, on se fout de l'identifiant, c'est de la cuisine interne pour ton SGBD. Tu ne fais pas les insertions des informations dans les deux tables simultanément: même si le délai entre l'insertion dans chaque table est à peine mesurable, il existe : tu insères d'abord dans une table: tu peux donc récupérer un identifiant pour ensuite faire l'insertion dans l'autre table avec la valeur récupérée pour alimenter la clé étrangère de la seconde. Mais la clé primaire d'une table ne doit pas obligatoirement être la même que celle de la seconde, c'est complètement illogique.
Ta seconde table doit avoir sa propre clé primaire et avoir une autre colonne en clé étrangère correspondant à la clé primaire de la première, clé que tu récupères avec last_insert_id lors de l'insertion dans la première.

Posté : 03 mai 2006, 10:14
par pixfacto
Ok merci. je test ça

Pierre