मुझे अंततः समाधान मिल गया है और मैं इसे भविष्य के संदर्भ के लिए यहां पोस्ट कर रहा हूं। मुझे mysql लोड डेटा मैन्युअल पेज<में मदद मिली है /ए> ।
तो परीक्षण के उद्देश्य से मेरी तालिका संरचना है:
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| nome | varchar(45) | YES | | NULL | |
| valore | bit(1) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
मेरा csv
परीक्षण फ़ाइल है:
1,primo_valore,1
2,secondo_valore,0
3,terzo_valore,1
csv
लोड करने के लिए क्वेरी तालिका में है:
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;
जैसा कि आप देख सकते हैं csv
. लोड करें आपको एक कास्ट करने की जरूरत है cast(@valore as signed)
और आपके csv
. में आप पूर्णांक संकेतन का उपयोग कर सकते हैं 1
या 0
bit
को इंगित करने के लिए मूल्य। ऐसा इसलिए है क्योंकि BIT मानों को बाइनरी नोटेशन का उपयोग करके लोड नहीं किया जा सकता है (उदाहरण के लिए, b'011010'
)।