[MySQL] Mise à jour d'une colonne d'une table.

Mise à jour d'une colonne d'une table. [MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 07-02-2012 à 23:56:37    

Bonjour/Bonsoir,
 
Je gère une base SQL et j'ai quelques problèmes avec des grands nombres sur une table avec une colonne d'entrée de GUID.
Concrètement j'ai environ 50k entrées, et la numérotation monte jusqu'à 50 millions  :(  
 
Je souhaite donc au niveau de la colonne des GUID, parcourir toute la colonne et renuméroter en partant de 1 l'ensemble.
 
J'ai donc essayé de faire une procédure qui parcours chaque entrée via un curseur qui va Update et incrémenter d'un la valeur, mais je n'arrive pas à le faire marcher je dois avoir un petit soucis dans la syntaxe.
 
Voici mon essai :
 
CREATE PROCEDURE renumerote()
BEGIN
DECLARE i INT DEFAULT 1;
DECLARE var_guid INT DEFAULT 1;
DECLARE cur1 CURSOR FOR SELECT guid FROM table ORDER BY guid ASC;
OPEN cur1;
 WHILE i < 6000000 DO
   FETCH cur1 INTO var_guid;
   SET i = i + 1;
   UPDATE table SET cur1 = i;
 END WHILE;
CLOSE cur1;
END
 
Et cela me ressort : Affected rows: 0
Alors qu'il y a des entrées guid 1, 2, 3, 4, etc jusqu'à loin =/
 
Si quelqu'un a une idée de pourquoi cela ne fonctionne pas je suis preneur.
 
Merci d'avance.  :love:  
 
Anomie.

Reply

Marsh Posté le 07-02-2012 à 23:56:37   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed