Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/07/2006, 15h18   #1
Futur Membre du Club
 
Inscription : avril 2006
Messages : 95
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 95
Points : 18
Points : 18
Par défaut LOAD DATA et Champ vide

Bonjours à tous ,

J'ai un petit probleme à l'utilisation de la fonction LOAD DATA INFILE.En effet, je recuperre les données dans des fichiers ( cela fonctionne très bien ) mais les champs vide ne sont pas tous mis à NULL.J'aimerai savoir comment faire pour mettre ceux ci à NULL.J'ai lus sur le site mysql des configurations de LOAD DATA mais j'ai tester et tous mes champs ne sont pas encore à NULL.

Voici mon code :
Code :
1
2
3
4
5
6
7
8
9
10
LOAD DATA LOCAL INFILE '//172.26.76.11/$name'
INTO TABLE tbl_g_histosiebel
FIELDS 
TERMINATED BY '|' 
ENCLOSED BY '' 
ESCAPED BY ' ' 
LINES 
STARTING BY '' 
TERMINATED BY '\\n'
(NomadForfait,...,CommentaireOptim,ReponseSTC,TypeProbSTC)
et mon fichiers es formaté de la façon suivante :
Citation:
toto|tata||charlie|20236521||||avion||
toniox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2006, 17h26   #2
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Ce post n'ayant aucun rapport avec le langage SQL, et mon ami Google m'ayant indiqué que "LOAD DATA INFILE" concernait sûrement MySQL, je déplace donc.

Merci de faire attention de poster dans le bon forum
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2006, 18h20   #3
Futur Membre du Club
 
Inscription : avril 2006
Messages : 95
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 95
Points : 18
Points : 18
Merci désolé je me suis pressé ! J'ai toujours rien trouvé! J'ai essayé pas mal de chose mais toujorus rien !

Un ptit up au passage !
toniox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2006, 18h24   #4
Rédacteur
 
Avatar de Biglo
 
Inscription : juillet 2002
Messages : 537
Détails du profil
Informations personnelles :
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : juillet 2002
Messages : 537
Points : 561
Points : 561
Salut,

Donne-nous le CREATE TABLE de tbl_g_histosiebel qu'on puisse tester rapidement en local.
Biglo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2006, 11h16   #5
Futur Membre du Club
 
Inscription : avril 2006
Messages : 95
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 95
Points : 18
Points : 18
Hello Capt'ain dsl pour le réponse tardive mais j'ai eu des réunion hier soir au boulot!

voila le create table :

Code :
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
CREATE TABLE `tbl_g_histosiebel` (
  `NomadForfait` varchar(20) DEFAULT NULL,
  `NumCompteClient` varchar(20) DEFAULT NULL,
  `Contrat` varchar(20) DEFAULT NULL,
  `StatutContrat` varchar(20) DEFAULT NULL,
  `NumMobile` varchar(20) DEFAULT NULL,
  `Motif` varchar(30) DEFAULT NULL,
  `CommentDossier` varchar(100) DEFAULT NULL,
  `Univers` varchar(20) DEFAULT NULL,
  `NumeroAction` varchar(10) DEFAULT NULL,
  `Theme` varchar(50) DEFAULT NULL,
  `Action1` varchar(50) DEFAULT NULL,
  `Action2` varchar(20) DEFAULT NULL,
  `Etat` varchar(20) DEFAULT NULL,
  `Demandeur` varchar(20) DEFAULT NULL,
  `DateCreationAction` varchar(20) DEFAULT NULL,
  `DateEffetSouhaite` varchar(20) DEFAULT NULL,
  `DateEffetReel` varchar(20) DEFAULT NULL,
  `CompetenceDestinataire` varchar(20) DEFAULT NULL,
  `CdcDest` varchar(20) DEFAULT NULL,
  `SiteCdcDest` varchar(50) DEFAULT NULL,
  `EquipeCdcDest` varchar(50) DEFAULT NULL,
  `Media` varchar(20) DEFAULT NULL,
  `NumeroContact` varchar(20) DEFAULT NULL,
  `CdcCreateur` varchar(20) DEFAULT NULL,
  `SiteCdcCreateur` varchar(50) DEFAULT NULL,
  `EquipeCdcCreateur` varchar(50) DEFAULT NULL,
  `CdcModificateur` varchar(50) DEFAULT NULL,
  `DateModifAction` varchar(20) DEFAULT NULL,
  `NumMobileFax` varchar(20) DEFAULT NULL,
  `Modele` varchar(20) DEFAULT NULL,
  `Expediteur` varchar(20) DEFAULT NULL,
  `Destinataire` varchar(20) DEFAULT NULL,
  `DateHeure` varchar(30) DEFAULT NULL,
  `Lieu` varchar(20) DEFAULT NULL,
  `CodePostal` varchar(20) DEFAULT NULL,
  `ParametrageVerif` varchar(20) DEFAULT NULL,
  `MarqueOICK` varchar(20) DEFAULT NULL,
  `HLR` varchar(20) DEFAULT NULL,
  `TestCroiseOK` varchar(20) DEFAULT NULL,
  `FonctionnaitAvt` varchar(20) DEFAULT NULL,
  `Mail` varchar(20) DEFAULT NULL,
  `ServiceContenu` varchar(20) DEFAULT NULL,
  `WapGPRS` varchar(20) DEFAULT NULL,
  `NAM` varchar(20) DEFAULT NULL,
  `Descriptif` varchar(255) DEFAULT NULL,
  `ReponseReseau` varchar(50) DEFAULT NULL,
  `ReponseOptim` varchar(50) DEFAULT NULL,
  `CommentaireOptim` varchar(50) DEFAULT NULL,
  `ReponseSTC` varchar(50) DEFAULT NULL,
  `TypeProbSTC` varchar(50) DEFAULT NULL,
  KEY `IndexEtat` (`DateModifAction`)
)
Merci beaucoup
toniox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2006, 11h20   #6
Futur Membre du Club
 
Inscription : avril 2006
Messages : 95
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 95
Points : 18
Points : 18
Bon j'ai trouvé il en faite lorsque lon charge les données il remplis les cases de caractere vide : '' donc pour ma requete par ex :

select * from tbl where commentaire = ''

Et voili ( Par curiosité si kkun sais comment mettre des valeurs null je suis aussi prenneur ! )
toniox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2006, 13h01   #7
Rédacteur
 
Avatar de Biglo
 
Inscription : juillet 2002
Messages : 537
Détails du profil
Informations personnelles :
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : juillet 2002
Messages : 537
Points : 561
Points : 561
Salut,

En fait, c'est logique qu'il mette des chaînes vides au lieu de NULL ! Je n'avais pas pensé à ça hier...

Pour la commande suivante :
Code :
1
2
3
4
5
6
LOAD DATA LOCAL INFILE 'c:\\rempli.txt'
INTO TABLE matable
FIELDS 
TERMINATED BY '|' 
LINES 
TERMINATED BY '\\n'
Il faut préciser les champs NULL avec \N (attention à la majuscule). Donc le fichier source doit être comme ceci :

Code :
toto|tata|\N|charlie|20236521|\N|\N|\N|avion|\N|\N
Par contre, si tu spécifies ENCLOSED BY "'" dans ton fichier source, tu dois avoir ce format là :

Code :
'toto'|'tata'|NULL|'charlie'|'20236521'|NULL|NULL|NULL|'avion'|NULL|NULL
Biglo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2006, 13h09   #8
Futur Membre du Club
 
Inscription : avril 2006
Messages : 95
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 95
Points : 18
Points : 18
Merci Capt'n !!

MErci l'explication est nickel et sa focntionne au poil !!

@++ .encore Merci
toniox est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h42.


 
 
 
 
Partenaires

Hébergement Web