Audit de données : vérifier l’absence de doublons (ONB identiques) dans chaque table P5
Description
Dans certains cas, lorsque l’on n’a pas positionné d’offset pour les bases de données Planisware par exemple, il peut arriver que l’on constate la présence d’objets ayant le même ONB dans une même table Planisware. Ceci est une grave corruption du modèle de données, car Planisware ne sera pas en mesure de charger les 2 objets. Il en chargera un seul sur les 2 et la plupart du temps remontera une erreur indiquant que l’objet xxxx possèdant le même ONB que l’objet yyyy n’a pu être chargé.
Requêtes SQL
Il est possible de vérifier la présence de tels doublons par la méthode suivante.
Pour commencer il faut récupérer la liste des tables Planisware possédant une colonne « ONB ». ( Cf. Requête SQL pour avoir toutes les tables de la BDD avec possédant un champ « ONB »).
Ensuite, récupérer cette liste de tables dans Excel pour générer une requête globale du type :
(SELECT ONB, Count(*),’TABLE_PLW_1’ FROM TABLE_PLW_1
GROUP BY ONB HAVING Count(*) > 1) UNION
(SELECT ONB, Count(*),’TABLE_PLW_2’ FROM TABLE_PLW_2
GROUP BY ONB HAVING Count(*) > 1) UNION
…
(SELECT ONB, Count(*),’TABLE_PLW_N’ FROM TABLE_PLW_N
GROUP BY ONB HAVING Count(*) > 1) ;
Résultat obtenu :
Résultat de la requête permettant de remonter les doublons.
Ainsi ici on constate que l’on a des doublons dans les tables suivantes :
→COMMON_DATASET
→TASK
Dans les 2 tables, il y a 2 objets qui possèdent le même ONB : le champ count(*) est égal à 2 pour chacune des tables.
Dans ce cas on a remonté les doublons présents dans une même table ce qui est le cas le plus critique pour Planisware.