mysql autoincrement et dédoublonnage

Le
VarioFlux
Hello

j'avais un champs ID en autoincrement sur une table mysql.

Suite à je ne sais quelle manipulation (sûrement une restauration) non
seulement l'autoincrement a disparu mais aussi l'indication que ce
champs était la clef primaire.

Tous les ajouts (environ 1000) l'ont été fait avec la valeur 0 dans ce
champs. Résultat avec phpmyadmin plus moyen de repasser cette colonne
en clef primaire (valeur unique) ni en autoincrement

Comment rétablir la situation ?

Merci de vos idées
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Williamhoustra
Le #22734721
VarioFlux a émis l'idée suivante :
Hello

j'avais un champs ID en autoincrement sur une table mysql.

Suite à je ne sais quelle manipulation (sûrement une restauration) non
seulement l'autoincrement a disparu mais aussi l'indication que ce champs
était la clef primaire.

Tous les ajouts (environ 1000) l'ont été fait avec la valeur 0 dans ce
champs. Résultat avec phpmyadmin plus moyen de repasser cette colonne en clef
primaire (valeur unique) ni en autoincrement...

Comment rétablir la situation ?

Merci de vos idées



Tout ça est à discuter sur le forum plus adapté qui s'appelle
fr.comp.applications.sgbd sur lequel je redirige puisque c'est du pur
MySQL et non du PHP.

Effectivement on se demande bien comment cette colonne fondamentale
a pu disparaitre ! Pour reconstituer il faut recréer une table
semblable avec le champ clé primaire unique, not null, auto incrémenté,
clustered (à adapter selon le dialecte SQL de MySQL), et insérer les
données de la précédente table. Je me demande comment ça sera possible
car une table sans index clustered et réputée inutilisable. En tout cas
ça ne m'est jamais arrivé. Et cette table est-elle liée à d'autres ?
Rare qu'on utilise une unique table.
VarioFlux
Le #22735081
Williamhoustra a exprimé avec précision :

Tout ça est à discuter sur le forum plus adapté qui s'appelle
fr.comp.applications.sgbd sur lequel je redirige puisque c'est du pur MySQL
et non du PHP.



Oui, merci, j'avais crossposté... Juste qu'ici ça me semble un peu plus
actif.

Effectivement on se demande bien comment cette colonne fondamentale a pu
disparaitre ! Pour reconstituer il faut recréer une table semblable avec le
champ clé primaire unique, not null, auto incrémenté, clustered (à adapter
selon le dialecte SQL de MySQL), et insérer les données de la précédente
table. Je me demande comment ça sera possible car une table sans index
clustered et réputée inutilisable. En tout cas ça ne m'est jamais arrivé. Et
cette table est-elle liée à d'autres ? Rare qu'on utilise une unique table.



Ben en l'occurence c'est bien une table seule. Elle me sert juste à
enregistrer ce qui se passe en cativité sur un site, et j'en tire mon
sitemap au passage, comme ça c'est les visiteurs qui me le fabriquent
rien qu'en surfant...

j'ai réglé le premier point :
1) créé un nouveau champs ID1 autoincrement et primary
2) effacé l'ancien ID erroné
3) renommé ID1 en ID

reste que je ne sais pas dédoublonner car du coup, des url se
retrouvent en double dans cette table, et GG me propose pleins de
scripts et/ou de commandes sql qui plantent en syntax error

Merci
yamo'
Le #22736091
Salut,

VarioFlux a tapoté, le 29/10/2010 19:55:
reste que je ne sais pas dédoublonner car du coup, des url se
retrouvent en double dans cette table, et GG me propose pleins de
scripts et/ou de commandes sql qui plantent en syntax error



Faire des select distinct peut aider?

--
Stéphane
http://pasdenom.info
Publicité
Poster une réponse
Anonyme