J'ai enfin trouvé la solution et je la poste ici pour référence future. J'ai trouvé de l'aide dans la page du manuel mysql load data .
Donc, à des fins de test, la structure de ma table est :
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| nome | varchar(45) | YES | | NULL | |
| valore | bit(1) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
Mon csv le fichier de test est :
1,primo_valore,1
2,secondo_valore,0
3,terzo_valore,1
La requête pour charger le csv dans le tableau est :
load data infile 'test.csv' into table test
fields terminated by ',' lines terminated by '\n'
(id, nome, @valore) set
valore=cast(@valore as signed);
show warnings;
Comme vous pouvez le voir, chargez le csv vous devez faire un casting cast(@valore as signed) et dans votre csv vous pouvez utiliser la notation entière 1 ou 0 pour indiquer le bit évaluer. En effet, les valeurs BIT ne peuvent pas être chargées à l'aide de la notation binaire (par exemple, b'011010' ).