Retour : Page Principale > sommaire aide > sommaire aide-mémos

Fusion de données CeL entre plusieurs comptes


Contexte

Une andouille a créé 45 comptes différents qui ont chacun des données dans le CeL, ou alors s'est trompé d'email en saisissant dans le Widget, s'est trompé d'adresse quand il a commandé sa pizza, et souhaite maintenant les fusionner (les comptes CeL, pas les pizzas).

Fusion

Exemple de fusion

Base de données

Le principe est d'harmoniser les valeurs de ce_utilisateur et courriel_utilisateur dans les tables cel_obs et cel_images. Oui mais attention, il y a un piège !! La colonne ordre qui sert à rien et qui fait chier (existe toujours au 20/07/2017) est utilisée dans une clef unique qui fait que si on fait un pauvre UPDATE on va se taper une violation de contrainte.
C'est drôle, le seul endroit où il y a des clefs dans cette BDD, c'est des endroits où ça sert à rien et ça fait chier :) (spécial kasdédi à DJ JP)

Il faut donc tricher en décalant l'ordre, et en le recalant ensuite.

Dans l'exemple suivant, on fusionnera les données du compte "comptefoireux@hotmail.fr" (ID inconnu, pas important) dans le compte "supercomte@yahoo.fr" (ID "12345").
(utilisez votre intelligence surhumaine pour faire pareil avec plusieurs comptes)

Table cel_obs
-- décalage de l'ordre pour être peinard
SELECT @n := 400000;
UPDATE cel_obs SET ordre = @n := @n + 1 WHERE courriel_utilisateur = 'supercompte@yahoo.fr';
UPDATE cel_obs SET ce_utilisateur = '12345', courriel_utilisateur = 'supercompte@yahoo.fr', ordre = @n := @n + 1 WHERE courriel_utilisateur = 'comptefoireux@hotmail.fr';
-- recalage de l'ordre à partir de 1
SELECT @n := 0;
UPDATE cel_obs SET ordre = @n := @n + 1 WHERE courriel_utilisateur = 'supercompte@yahoo.fr';


Table cel_images
Bah c'est pareil mais avec la table cel_images.

Supprimer les comptes

Les comptes non utilisés devraient être supprimés en se connectant, en allant dans son profil, et en choisissant "se désinscrire".