Jean-Francois Leveque

https://tree.taiga.io/project/jr-utily-grog-v3/us/187 Ajouter du contrôle d'erre…

…ur dans les scripts de migration v2 -> v3
Bonus : drop avant create table si nécessaire.
1 tee normalisePays.log 1 tee normalisePays.log
2 2
3 +DROP TABLE IF EXISTS pays;
4 +
3 CREATE TABLE pays ( 5 CREATE TABLE pays (
4 ID_PAYS int(11) NOT NULL AUTO_INCREMENT, 6 ID_PAYS int(11) NOT NULL AUTO_INCREMENT,
5 LIB_PAYS varchar(100) DEFAULT NULL, 7 LIB_PAYS varchar(100) DEFAULT NULL,
...@@ -8,6 +10,8 @@ CREATE TABLE pays ( ...@@ -8,6 +10,8 @@ CREATE TABLE pays (
8 10
9 insert into pays select * from v2.pays; 11 insert into pays select * from v2.pays;
10 12
13 +DROP TABLE IF EXISTS editeur;
14 +
11 CREATE TABLE editeur ( 15 CREATE TABLE editeur (
12 ID_EDITEUR int(11) NOT NULL AUTO_INCREMENT, 16 ID_EDITEUR int(11) NOT NULL AUTO_INCREMENT,
13 NOM_EDITEUR varchar(50) NOT NULL, 17 NOM_EDITEUR varchar(50) NOT NULL,
...@@ -36,7 +40,7 @@ update editeur set PAYS='Espagne' where PAYS in ('España'); ...@@ -36,7 +40,7 @@ update editeur set PAYS='Espagne' where PAYS in ('España');
36 update editeur set PAYS='Pologne' where PAYS in ('Polska'); 40 update editeur set PAYS='Pologne' where PAYS in ('Polska');
37 update editeur set PAYS='Royaume-Uni' where PAYS in ('United Kingdom', 'Royaume Uni', 'Grande-Bretagne', 'United Kingdoms', 'Royaumes Unis', 'Angleterre', 'UK'); 41 update editeur set PAYS='Royaume-Uni' where PAYS in ('United Kingdom', 'Royaume Uni', 'Grande-Bretagne', 'United Kingdoms', 'Royaumes Unis', 'Angleterre', 'UK');
38 update editeur set PAYS='États-Unis' where PAYS in ('USA', 'Etats Unis', 'Etats-Unis d\'Amérique', 'Etats Unis d\'Amérique', 'Caroline du Sud'); 42 update editeur set PAYS='États-Unis' where PAYS in ('USA', 'Etats Unis', 'Etats-Unis d\'Amérique', 'Etats Unis d\'Amérique', 'Caroline du Sud');
39 -update editeur set PAYS='République thèque' where PAYS in ('Ceska Republika'); 43 +update editeur set PAYS='République tchèque' where PAYS in ('Ceska Republika');
40 update editeur set PAYS='Finlande' where PAYS in ('Suomi / Finlande'); 44 update editeur set PAYS='Finlande' where PAYS in ('Suomi / Finlande');
41 update editeur set PAYS='Suède' where PAYS in ('Sverige / Suède'); 45 update editeur set PAYS='Suède' where PAYS in ('Sverige / Suède');
42 update editeur set PAYS='Italie' where PAYS in ('Italia'); 46 update editeur set PAYS='Italie' where PAYS in ('Italia');
...@@ -62,7 +66,10 @@ insert into pays (LIB_PAYS) values ('Pays-Bas'); ...@@ -62,7 +66,10 @@ insert into pays (LIB_PAYS) values ('Pays-Bas');
62 insert into pays (LIB_PAYS) values ('Hongrie'); 66 insert into pays (LIB_PAYS) values ('Hongrie');
63 update pays set LIB_PAYS='États-Unis' where LIB_PAYS='USA'; 67 update pays set LIB_PAYS='États-Unis' where LIB_PAYS='USA';
64 68
65 --- CONTROLE MATCHING 69 +-- CONTROLE UNICITE LIBELLES PAYS
66 -select ID_EDITEUR from editeur 70 +select LIB_PAYS, count(LIB_PAYS) co, 'ERROR' from pays group by LIB_PAYS having co > 1;
71 +
72 +-- CONTROLE MATCHING PAYS DES EDITEURS
73 +select NOM_EDITEUR, 'ERROR' from editeur
67 where PAYS is not null 74 where PAYS is not null
68 and PAYS not in (select LIB_PAYS from pays); 75 and PAYS not in (select LIB_PAYS from pays);
...\ No newline at end of file ...\ No newline at end of file
......