Cuối cùng tôi đã tìm ra giải pháp và tôi sẽ đăng nó ở đây để tham khảo trong tương lai. Tôi đã tìm thấy trợ giúp trong trang hướng dẫn tải dữ liệu mysql .
Vì vậy, cho mục đích thử nghiệm, cấu trúc bảng của tôi là:
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| nome | varchar(45) | YES | | NULL | |
| valore | bit(1) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
csv
của tôi tệp thử nghiệm là:
1,primo_valore,1
2,secondo_valore,0
3,terzo_valore,1
Truy vấn tải csv
vào bảng là:
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;
Như bạn có thể thấy, hãy tải csv
bạn cần thực hiện truyền cast(@valore as signed)
và trong csv
của bạn bạn có thể sử dụng ký hiệu số nguyên 1
hoặc 0
để chỉ ra bit
giá trị. Điều này là do không thể tải các giá trị BIT bằng ký hiệu nhị phân (ví dụ:b'011010'
).