Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 880 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 880 Rev 890
1
-- date d'observation dans le futur
1
-- date d'observation dans le futur
2
UPDATE `BASEEDIT`.`cel_obs` SET date_observation = NULL WHERE date_observation > now();
2
UPDATE `BASEEDIT`.`cel_obs` SET date_observation = NULL WHERE date_observation > now();
3
-- cleanup
3
-- cleanup
4
UPDATE `BASEEDIT`.`cel_obs` SET date_observation = NULL WHERE date_observation = '0000-00-00 00:00:00';
4
UPDATE `BASEEDIT`.`cel_obs` SET date_observation = NULL WHERE date_observation = '0000-00-00 00:00:00';
5
-- cleanup
5
-- cleanup
6
UPDATE `BASEEDIT`.`cel_obs` SET latitude = NULL, longitude = NULL WHERE longitude = 0 and latitude = 0;
6
UPDATE `BASEEDIT`.`cel_obs` SET latitude = NULL, longitude = NULL WHERE longitude = 0 and latitude = 0;
7
 
7
 
8
-- referentiels: 65800 NULL, 13000 ''
8
-- referentiels: 65800 NULL, 13000 ''
9
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = SUBSTRING_INDEX(nom_referentiel, ':', 1);
9
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = SUBSTRING_INDEX(nom_referentiel, ':', 1);
10
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = 'bdtfx' WHERE nom_referentiel IN ('bdtfx_v1','bdnff');
10
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = 'bdtfx' WHERE nom_referentiel IN ('bdtfx_v1','bdnff');
11
 
11
 
12
-- pas de raison historique mémorisée à une différence '' vs NULL
12
-- pas de raison historique mémorisée à une différence '' vs NULL
13
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = NULL where nom_referentiel = '';
13
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = NULL where nom_referentiel = '';
-
 
14
 
-
 
15
-- uniformisation NULL / vide pour nom_sel
-
 
16
UPDATE `BASEEDIT`.`cel_obs` SET nom_sel = NULL WHERE nom_sel = '';
-
 
17
 
-
 
18
-- uniformisation NULL / vide pour nom_sel_nn
-
 
19
UPDATE `BASEEDIT`.`cel_obs` SET nom_sel_nn = NULL WHERE nom_sel_nn = 0;
-
 
20
 
-
 
21
-- restauration de nom_sel vraisemblablement valides, mais vides: 48 obs
-
 
22
UPDATE `BASEEDIT`.`cel_obs` SET nom_sel = nom_ret WHERE nom_sel IS NULL AND nom_ret IS NOT NULL AND nom_ret != '' AND nom_sel_nn IS NOT NULL;
-
 
23
 
14
 
24
 
15
-- suppression des infos générées pour les observations dont le nom_sel à été supprimé par l'utilisateur
25
-- suppression des infos générées pour les observations dont le nom_sel à été supprimé par l'utilisateur
16
-- 3172
26
-- 3380
17
UPDATE `BASEEDIT`.`cel_obs` c SET
27
UPDATE `BASEEDIT`.`cel_obs` c SET
18
       c.nom_ret = '',
28
       c.nom_ret = '',
19
       c.nom_sel_nn = NULL,
29
       c.nom_sel_nn = NULL,
20
       c.nom_ret = NULL,
30
       c.nom_ret = NULL,
21
       c.nom_ret_nn = NULL,
31
       c.nom_ret_nn = NULL,
22
       c.nt = NULL,
32
       c.nt = NULL,
23
       c.famille = NULL
33
       c.famille = NULL
24
       WHERE nom_sel = '' OR nom_sel IS NULL;
34
       WHERE nom_sel IS NULL OR nom_ret = 'undefined';
25
 
35
 
-
 
36
-- problème n°1: mauvais référentiel (bdtfx au lieu de bdtxa), on utilise les lieudit "bdtxa" pour
-
 
37
-- corriger les observations qui pourraient être étiquetées avec un mauvais nom_referentiel: 49 obs
26
-- problème n°1: mauvais référentiel (bdtfx)
38
CREATE TEMPORARY TABLE T_cleanref (lieu VARCHAR(255)) ENGINE=MEMORY AS ( SELECT DISTINCT TRIM(lieudit) FROM `BASEEDIT`.`cel_obs` WHERE nom_referentiel = 'bdtxa' );
-
 
39
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = 'bdtxa' WHERE nom_referentiel != 'bdtxa' AND lieudit != '' AND lieudit IN (SELECT lieu FROM T_cleanref);
27
UPDATE `BASEEDIT`.`cel_obs` SET nom_referentiel = 'bdtxa' WHERE lieudit = 'Grenade';
-
 
28
 
-
 
29
-- problème n°2: nom_sel NULL, nom_ret NOT NULL: 26 obs
-
 
30
UPDATE `BASEEDIT`.`cel_obs` SET nom_sel = nom_ret, nom_sel_nn = nom_ret_nn WHERE nom_sel IS NULL AND nom_ret IS NOT NULL;
40
DROP TEMPORARY TABLE T_cleanref;
31
 
41
 
32
-- problème n°3: backslashes + newline: 90 + 217 obs
42
-- problème n°2: backslashes + newline: 90 + 217 obs
33
UPDATE `BASEEDIT`.`cel_obs` SET commentaire = REPLACE(commentaire, "\n\\\'", "'");
43
UPDATE `BASEEDIT`.`cel_obs` SET commentaire = REPLACE(commentaire, "\n\\\'", "'");
34
UPDATE `BASEEDIT`.`cel_obs` SET commentaire = REPLACE(commentaire, "\\\'", "'");
44
UPDATE `BASEEDIT`.`cel_obs` SET commentaire = REPLACE(commentaire, "\\\'", "'");
35
 
45
 
36
-- problème n°4: ce_zone_geo inutile: 57802 obs
46
-- problème n°3: ce_zone_geo inutile: 57802 obs
-
 
47
UPDATE `BASEEDIT`.`cel_obs` SET ce_zone_geo = NULL WHERE ce_zone_geo = 'INSEE-C:';
-
 
48
 
-
 
49
-- trim nom_sel
-
 
50
UPDATE `BASEEDIT`.`cel_obs` SET nom_sel = TRIM(nom_sel);
-
 
51
-- nom_ret = "null"
-
 
52
UPDATE `BASEEDIT`.`cel_obs` SET nom_ret = NULL WHERE nom_ret = 'null';
37
UPDATE `BASEEDIT`.`cel_obs` SET ce_zone_geo = NULL WHERE ce_zone_geo = 'INSEE-C:';
53