की पहली पंक्ति को अनदेखा करें मेरे पास काफी बड़ी .txt फ़ाइल ~ 9 जीबी है और मैं इस txt फ़ाइल को पोस्टग्रेज़ में लोड करना चाहूंगा। पहली पंक्ति शीर्षलेख है, उसके बाद सभी डेटा। यदि मैं सीधे डेटा को कॉपी करता हूं, तो हेडर एक त्रुटि का कारण बनता है कि डेटा प्रकार मेरी पोस्टग्रेस तालिका से मेल नहीं खाता है, इसलिए मुझे इसे किसी भी तरह से हटाने की आवश्यकता होगी।पोस्टग्रेस कॉपी कैसे करें बड़ी txt फ़ाइल
नमूना डेटा: ProjectId, MailId, MailCodeId, prospectid, ListId, datemailed, राशि, दान दिया, ज़िप, zip4, VectorMajor, VectorMinor, packageid, चरण, databaseid, AMOUNT2
15,53568419,89734,219906,15,2011-05-11 00:00:00,0,0,90720,2915,NonProfit,POLICY,230,3,1,0
16,84141863,87936,164657,243,2011-03-10 00:00:00,0,0,48362,2523,NonProfit,POLICY,1507,5,1,0
16,81442028,86632,15181625,243,2011-01-19 00:00:00,0,0,11501,2115,NonProfit,POLICY,1508,2,1,0
जबकि कॉपी समारोह postgres के लिए "शीर्षक" सेटिंग कि पहली पंक्ति की उपेक्षा कर सकते है, यह केवल csv फ़ाइलें के लिए काम करता है:
0,123,516:copy training from 'C:/testCSV.csv' DELIMITER ',' csv header;
जब मैं अपने txt फ़ाइल पर उपरोक्त कोड को चलाने के लिए प्रयास करते हैं, यह एक त्रुटि हो जाता है
copy training from 'C:/testTXTFile.txt' DELIMITER ',' csv header
ERROR: unquoted newline found in data
HINT: Use quoted CSV field to represent newline.
मैं "बोली" और "भागने" जोड़ने की कोशिश की है जिम्मेदार बताते हैं लेकिन आदेश सिर्फ txt फ़ाइल के लिए काम करने के लिए प्रतीत नहीं होगा:
copy training from 'C:/testTXTFile.txt' DELIMITER ',' csv header quote as E'"' escape as E'\\N';
ERROR: COPY escape must be a single one-byte character
वैकल्पिक रूप से
, मैं जावा चलाने के बारे में सोचा या एक अलग stagging बनाने पहली पंक्ति को हटाने के लिए टेबल ... लेकिन ये समाधान विशाल और समय लेने वाले हैं। मुझे हेडर की पहली पंक्ति को हटाने के लिए 9 जीबी डेटा लोड करने की आवश्यकता होगी ... क्या txt फ़ाइल की पहली पंक्ति को आसानी से हटाने के लिए वहां अन्य समाधान हैं ताकि मैं अपने पोस्टग्रेज़ डेटाबेस में डेटा लोड कर सकूं?
_header_ विकल्प पहली पंक्ति को दूर करता है, कोई बाहरी उपयोगिता है कि के लिए आवश्यक है। यदि इससे "डेटा में अनगिनत नई लाइन" मिलती है, तो यह एक प्रश्न उठाता है: आपकी फ़ाइल की संरचना वास्तव में क्या है? यह [सीएसवी] से भिन्न कैसे है (http://en.wikipedia.org/wiki/Comma-separated_values)? –