Envoyé par
kagemaru
...C'est bien le fonctionnement normal...
Merci kagemaru.
si c'est le fonctionnement normal des vues, ca m'a couté quelques jours pour
comprendre la source de quelques problemes tres serieux surevenu à cause de ca...
Voici le cas reel:
j'ai une table Participant qui doit permettre l'existance de doublons...
ces doublons ont malheureusement des ID differents(numero de participant)
concretement: un participant peut avoir 2 comptes avec 2 ID mais un des deux comptes a le status Actif, l'autre est Passiv.
Il existe dans ma table Participant une autre colonne ID_Europeen qui a la meme valeurs chez le participant (Actif et Passiv).
Là j'utilise 2 vues:
-Vue_Actif:
Select * from Participant where Actif=1
-Vue_Passiv:
Select * from Participant where Actif=0
Plus loin dans mon programme je fais la joiture suivante pour trouver les participant double pour pouvoir transferer tout ce qui a été enregistré du compte Passiv au compte Actif:
1 2 3
| Select * from
Vue_Actif inner join Vue_Passiv
on Vue_Actif.ID_Europeen=Vue_Passiv.ID_Europeen |
le malheur est arrivé quand la structure de la table Participant a été modifié. du coup la colonne ID_Europeen dans mes vues pointe vers une autre colonne qui par hasard est une date d'enregistrement...
et voila que la jointure me retourne des combinaison avec la date au lieu du ID_Europeen ce qui me donne des participants tout à fait differents des doubles que je cherche...
vous imaginer le reste... des commandes ont été transferé à des Participant qui n'ont jamais rien commandé, au lieu de les transferer au nouveau compte des Participant (qui ont 2 comptes Actif/Passiv)
J'espere que cette explication est claire pour toi cavo789...
Si seulement je savais que ceci se passe comme ca, j'aurais fait en sorte de rafraichir mes vues chaque fois que je les appele
...
Pour ceux qui vont me conseiller de travailler avec des ID unique pour les participants... ca peut pas marcher pour des raisons politiques
Merci!
Partager