Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

हम MySQL टेबल में कुछ लाइन प्रीफ़िक्स वाली टेक्स्ट फ़ाइल को कैसे इम्पोर्ट कर सकते हैं?

<घंटा/>

मान लीजिए अगर हमारे पास टेक्स्ट फ़ाइल में एक लाइन प्रीफ़िक्स है तो 'LINES STARTING BY' विकल्प का उपयोग करके हम उस उपसर्ग को अनदेखा कर सकते हैं और MySQL तालिका में सही डेटा आयात कर सकते हैं। इसे निम्न उदाहरण की सहायता से समझा जा सकता है -

उदाहरण

मान लीजिए कि हम टेक्स्ट फ़ाइल में 'VALUE' को 'LINE PREFIX' के रूप में इस प्रकार उपयोग कर रहे हैं -

id,         Name,     Country,        Salary
VALUE:105,  Chum*,    Marsh,USA,      11000
106,        Danny*,   Harrison,AUS,   12000

अब इस टेक्स्ट फ़ाइल को MySQL तालिका में आयात करते समय हमें क्वेरी में 'LINES STARTING BY' विकल्प का भी उल्लेख करना होगा -

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee8_tbl FIELDS TERMINATED BY ',' ESCAPED BY '*' LINES STARTING BY 'Value:' IGNORE 1 ROWS;
Query OK, 1 row affected (0.07 sec)
Records: 1 Deleted: 0 Skipped: 0 Warnings: 0

अब, हम देख सकते हैं कि निम्न क्वेरी की सहायता से क्या आयात किया गया है -

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee8_tbl FIELDS TERMINATED BY ',' ESCAPED BY '*' LINES STARTING BY 'Value:' IGNORE 1 ROWS;
Query OK, 1 row affected (0.07 sec)
Records: 1 Deleted: 0 Skipped: 0 Warnings: 0

अब, हम देख सकते हैं कि निम्न क्वेरी की सहायता से क्या आयात किया गया है -

mysql> Select * from employee8_tbl;
+------+----------------+----------+--------+
| Id   | Name           | Country  | Salary |
+------+----------------+----------+--------+
| 105  | Chum,Marsh     | USA      |  11000 |
+------+----------------+----------+--------+
1 row in set (0.00 sec)

MySQL तालिका में केवल एक रिकॉर्ड आयात करता है क्योंकि हमने पहली पंक्ति से पहले लाइन प्रीफ़िक्स यानी 'VALUE:' का उपयोग किया है इसलिए यह उस लाइन को अनदेखा कर देता है जिसमें लाइन प्रीफ़िक्स नहीं है। अब, मान लीजिए अगर हम टेक्स्ट फ़ाइल में लाइन प्रीफ़िक्स 'VALUE:' के साथ एक और लाइन जोड़ते हैं तो MySQL इस लाइन को भी अपलोड करेगा -

id,          Name,                Country,    Salary
Value:105,   Chum*,               Marsh,USA,  11000
106,         Danny*,Harrison,     AUS,        12000
Value:107,   Raman*,Kumar,        IND,        25000
mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee8_tbl FIELDS TERMINATED BY ',' ESCAPED BY '*' LINES STARTING BY 'Value:' IGNORE 1 ROWS;
Query OK, 2 rows affected (0.07 sec)
Records: 1 Deleted: 0 Skipped: 0 Warnings: 0

अब, हम देख सकते हैं कि निम्न क्वेरी की सहायता से क्या आयात किया गया है -

mysql> Select * from employee8_tbl;
+------+----------------+----------+--------+
| Id   | Name           | Country  | Salary |
+------+----------------+----------+--------+
| 105  | Chum,Marsh     | USA      |  11000 |
| 107  | Raman,Kumar    | IND      |  25000 |
+------+----------------+----------+--------+
2 rows in set (0.00 sec)

  1. मैं फ़ाइल में MySQL तालिका से कुछ शर्तों के आधार पर मूल्यों को कैसे निर्यात कर सकता हूं?

    हम MySQL तालिका से डेटा को फ़ाइल में निर्यात करते समय WHERE क्लॉज में शर्तों का उपयोग कर सकते हैं। इसे एक उदाहरण की मदद से समझा जा सकता है - उदाहरण मान लीजिए कि हमारे पास तालिका Student_info से निम्नलिखित डेटा है - Student_info से * चुनें; ---+| आईडी | नाम | पता | विषय |+------+---------+---------

  1. मैं एक MySQL टेबल के स्टोरेज इंजन को कैसे बदल सकता हूं?

    MySQL ALTER TABLE स्टेटमेंट टेबल के स्टोरेज इंजन को इस प्रकार बदल सकता है - mysql> ALTER TABLE Student ENGINE = 'InnoDB'; Query OK, 0 rows affected (0.90 sec) Records: 0 Duplicates: 0 Warnings: 0 अब निम्नलिखित कथन की सहायता से, हम जांच सकते हैं कि स्टोरेज इंजन बदल दिया गया है mysql> S

  1. मैं MySQL तालिका में संग्रहीत युग को पठनीय तिथियों में कैसे परिवर्तित कर सकता हूं?

    इसे स्पष्ट करने के लिए हम विस्टर्स नामक तालिका के निम्नलिखित उदाहरण का उपयोग कर रहे हैं, जिसका युग इस प्रकार है - mysql> Create table visitors(userid int not null, name varchar(20), epoch int NOT NULL); Query OK, 0 rows affected (0.42 sec) mysql> Insert into visitors Values(1, 'Gaurav'