Bonjour à tous,

J'ai un soucis avec l'utilisation de la commande LOAD INTO FILE.

Si dans la structure de ma table un champ n'autorise pas les valeurs nulles la commande LOAD INTO FILE enregistre une chaîne de caractère vide à la place de soulever une erreur.

Dans le cas contraire, si le champ peut contenir une valeur nulle, il enregistre bien NULL.

J'utilise la requête suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
LOAD DATA INFILE 'fichier.csv'
REPLACE INTO TABLE ma_table 
FIELDS TERMINATED BY '|' 
LINES TERMINATED BY '\n';
Il génère bien un .csv avec le format suivant :
ID|Msg|Date
1|Bonjour|2012-01-01
2|Au revoir|\N

\N (pour une valeur nulle)

En cherchant sur la documentation et sur le forum, je sais qu'il existe une histoire avec les valeurs par défaut ENCLOSED BY et ESCAPED BY qui ne vont pas interpréter les valeurs nulles, les chaînes vides, etc. de la même manière mais je n'ai pas franchement tout compris...

Merci d'avance pour votre aide.