W końcu znalazłem rozwiązanie i zamieszczam je tutaj na przyszłość. Znalazłem pomoc na stronie podręcznika ładowania danych mysql .
Tak więc do celów testowych moja struktura tabeli to:
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| nome | varchar(45) | YES | | NULL | |
| valore | bit(1) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
Mój csv plik testowy to:
1,primo_valore,1
2,secondo_valore,0
3,terzo_valore,1
Zapytanie do załadowania pliku csv w tabeli jest:
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;
Jak widać, załaduj csv musisz wykonać rzut cast(@valore as signed) i w swoim csv możesz użyć notacji całkowitej 1 lub 0 aby wskazać bit wartość. Dzieje się tak, ponieważ wartości BIT nie można załadować za pomocą notacji binarnej (na przykład b'011010' ).