สมมติเรามีคำนำหน้าแถว (line prefix) ในไฟล์ข้อความ ด้วยการใช้ตัวเลือก '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> SELECT * FROM employee8_tbl; +------+----------------+----------+--------+ | Id | Name | Country | Salary | +------+----------------+----------+--------+ | 105 | Chum,Marsh | USA | 11000 | +------+----------------+----------+--------+ 1 row in set (0.00 sec)
MySQL นำเข้าแค่ 1 เรคคอร์ด เพราะเราใช้คำนำหน้า '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)