Bonjour,
J'ai une table que j'aimerais remplir, celle ci a la structure suivante:
Les structures des tables auxquelles je fais appel sont:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 CREATE TABLE IF NOT EXISTS `lister12` ( `Routage_Order` int(2) NOT NULL, `Equipement#` varchar(11) NOT NULL, `SiteGeo_Equipement` varchar(11) NOT NULL, `NUM_SITE_THEORIQUE1` varchar(11) DEFAULT NULL, `trafic` int(11) DEFAULT NULL, `SiteGeo_Routage` varchar(11) NOT NULL, `NUM_SITE_THEORIQUE2` varchar(11) DEFAULT NULL, `TYPE_SITE_THEORIQUE` varchar(11) DEFAULT NULL, KEY `NUM_SITE_THEORIQUE` (`NUM_SITE_THEORIQUE2`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 CREATE TABLE IF NOT EXISTS `lister` ( `NUM_SITE_THEORIQUE` varchar(11) NOT NULL, `NUM_SITE_GEO` varchar(11) NOT NULL, `NUM_CI` int(11) NOT NULL, `STATUT_POTENTIEL` varchar(11) NOT NULL, `TYPE_SITE_THEORIQUE` varchar(11) NOT NULL, `prio` int(2) NOT NULL, KEY `NUM_SITE_GEO` (`NUM_SITE_GEO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -------------------------------------------- CREATE TABLE IF NOT EXISTS `v_abis_routage` ( `Routage_Order` int(2) NOT NULL, `Equipement#` varchar(11) NOT NULL, `SiteGeo_Equipement` varchar(11) NOT NULL, `SiteGeo_Routage` varchar(11) NOT NULL, KEY `SiteGeo_Routage` (`SiteGeo_Routage`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -------------------------------------------- CREATE TABLE IF NOT EXISTS `sites` ( `Site` varchar(11) NOT NULL, `PIC_TOT_TRAFIC_SEM` int(11) DEFAULT '0', `Poids_Image` int(11) DEFAULT '0', PRIMARY KEY (`Site`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Ma requête est la suivante:
L'erreur générée est la suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 REPLACE INTO lister12 SELECT v_abis_routage.Routage_Order, v_abis_routage.`Equipement#`, v_abis_routage.SiteGeo_Equipement, (SELECT lister.NUM_SITE_THEORIQUE FROM lister WHERE lister.NUM_SITE_GEO=v_abis_routage.SiteGeo_Equipement ORDER BY lister.prio DESC LIMIT 1) AS NUM_SITE_THEORIQUE1, (SELECT sites.PIC_TOT_TRAFIC_SEM FROM sites, lister12 WHERE lister12.NUM_SITE_THEORIQUE1=sites.site ) AS trafic, v_abis_routage.SiteGeo_Routage, (SELECT lister.NUM_SITE_THEORIQUE FROM lister WHERE lister.NUM_SITE_GEO=v_abis_routage.SiteGeo_Routage ORDER BY lister.prio DESC LIMIT 1) AS NUM_SITE_THEORIQUE2, (SELECT lister.TYPE_SITE_THEORIQUE FROM lister WHERE lister.NUM_SITE_GEO=v_abis_routage.SiteGeo_Routage ORDER BY lister.prio DESC LIMIT 1) AS TYPE_SITE_THEORIQUE FROM v_abis_routage
Donc je change la structre du champs `trafic`:
Code : Sélectionner tout - Visualiser dans une fenêtre à part #1048 - Le champ 'trafic' ne peut être vide (null)
Je n'ai plus d'erreur mais le résultat est que tous les enregistrements de ce dernier champ prennent "NULL" comme valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part ALTER TABLE `lister12` CHANGE `trafic` `trafic` INT( 11 ) NULL
Quelle est la solution pour que j'ai les bonnes valeurs dans le champ `trafic`??
Merci.
Partager