Paano Mag-import ng mga CSV File sa MySQL: Gabay na Hakbang-hakbang na may mga Halimbawa

1. Panimula sa Pag-import ng mga CSV File sa MySQL

Ang pag-import ng mga CSV file sa MySQL ay isang makapangyarihang paraan upang pasimplehin ang pamamahala ng data at alisin ang pangangailangan ng manu-manong pagpasok ng data. Halimbawa, kapag nais mong mag-bulk load ng impormasyon na nakolekta mula sa maraming pinagmumulan ng data papunta sa isang database, o awtomatikong iproseso ang data mula sa isang panlabas na sistema, nagiging lubos na kapaki-pakinabang ang pag-import ng CSV.

Karaniwang Mga Gamit para sa Pag-import ng CSV

  • Paghawak ng malalaking dataset : Sa halip na manu-manong magpasok ng libu-libong tala, maaari mong mabilis na iproseso ang mga ito gamit ang pag-import ng CSV.
  • Paglipat ng data : Maginhawa para sa pag-import ng data na in-export mula sa ibang mga sistema papunta sa MySQL.
  • Regular na pag-update ng data : Sa mga sistemang nangangailangan ng madalas na pag-update, ang awtomasyon gamit ang mga CSV file ay lubos na epektibo.

2. Mga Paunang Kailangan

Bago mag-import ng CSV file sa MySQL, kinakailangan ang ilang mga pagsasaayos at paghahanda upang matiyak ang maayos na proseso.

2.1 Kinakailangang Kapaligiran

  • Pag-install ng MySQL server Kailangan mong maayos na mai-install ang MySQL. Siguraduhing tumatakbo ang MySQL sa iyong kapaligiran—Windows, macOS, o Linux man.
  • Suriin ang kinakailangang permiso Upang mag-import ng CSV file, dapat may tamang pribilehiyo ang MySQL user, lalo na ang pribilehiyong LOAD DATA INFILE. Kung wala ito, maaaring tanggihan ang pag-import.

2.2 Format ng CSV File

  • Delimiter Karaniwang comma-delimited ang mga CSV file, ngunit kung minsan ay gumagamit ng tab o semicolon. Laging tiyakin ang delimiter bago mag-import.
  • Pagsusuri ng encoding Kung ang CSV file ay gumagamit ng ibang character encoding (hal., UTF-8, Shift-JIS), maaaring magkaproblema sa mga karakter sa pag-import. Suriin ang encoding ng file nang maaga at i-convert ito sa tamang encoding kung kinakailangan.

3. Pag-import ng CSV gamit ang LOAD DATA INFILE Command

Ang pinaka-karaniwang paraan upang mag-import ng mga CSV file sa MySQL ay sa pamamagitan ng paggamit ng LOAD DATA INFILE command, na nagpapadali sa bulk load ng malaking dami ng data papunta sa isang talahanayan.

3.1 Pangunahing Sintaks

Narito ang pangunahing sintaks para sa pag-import ng CSV file sa MySQL:

LOAD DATA INFILE '/path/to/file.csv' INTO TABLE table_name
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n';
  • FIELDS TERMINATED BY : Tinukoy ang delimiter na ginagamit sa pagitan ng mga field. Ang kuwit (comma) ang pinaka-karaniwan.
  • LINES TERMINATED BY : Tinukoy ang line delimiter, karaniwang \n (newline

3.2 Halimbawang Pagpapatupad

Sa sumusunod na halimbawa, ang file na pinangalanang user_data.csv ay ini-import papunta sa talahan users:

LOAD DATA INFILE '/path/to/user_data.csv' INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n'
IGNORE 1 LINES;
  • IGNORE 1 LINES : Nilalaktawan ang unang hilera (header row). Kapaki-pakinabang kapag ang CSV ay naglalaman ng mga pangalan ng kolum sa unang linya.

3.3 Mga Tala sa File Path at Permiso

Dapat nakalagay ang file sa lokasyon kung saan maaring ma-access ng MySQL server. Kung hindi mabasa ng server ang file, gamitin ang LOAD DATA LOCAL INFILE upang i-import ang data mula sa client side.

4. Pagsusuri ng Karaniwang Problema

Narito ang mga solusyon sa mga tipikal na problema na nararanasan kapag nag-i-import ng CSV file sa MySQL.

4.1 Mga Isyu sa File Path

Kung mali ang file path, maaaring makita mo ang error na The MySQL server is not permitted to read from the file. Sa ganitong mga kaso, suriin ang tamang path sa server, o gamitin ang opsyon na LOAD DATA LOCAL INFILE upang i-load ang mga file mula sa client side.

LOAD DATA LOCAL INFILE '/path/to/file.csv' INTO TABLE table_name
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n';

4.2 Mga Isyu sa Character Encoding

Kung ang file ay naka-save sa ibang encoding, maaaring magpakita ng magulong teksto sa pag-import. Upang maiwasan ito, tiyakin ang encoding ng file at itakda ang tamang character set sa MySQL:

SET NAMES 'utf8mb4';

5. Praktikal na Halimbawa: Pag-import ng CSV File

Tara’t sundan natin ang sunud-sunod na proseso ng pag-import ng CSV file sa MySQL.

5.1 Paghahanda ng CSV File

Lumikha ng CSV file (data.csv) na may sumusunod na nilalaman:

id,name,age
1,Taro Yamada,28
2,Hanako Sato,34
3,Ichiro Tanaka,45

5.2 Pagsasagawa ng Command

Upang i-import ang file sa users table, i-run ang command na ito:

LOAD DATA INFILE '/path/to/data.csv' INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n'
IGNORE 1 LINES;

Ang command na ito ay nag-i-import ng lahat ng rows na nagsisimula mula sa pangalawang linya sa users table.

6. Pahusay: Paghawak ng Error at Duplicate Data

Narito kung paano hawakan ang mga error at duplicate data kapag nag-i-import ng CSV files sa MySQL.

6.1 Paghawak ng Duplicate Data

Kung ang mga records na may parehong key ay umiiral na, gumamit ng REPLACE option upang i-overwrite ang umiiral na rows ng bagong data:

LOAD DATA INFILE '/path/to/data.csv' INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n'
IGNORE 1 LINES
REPLACE;

6.2 Paghawak ng Error

Kung nais mong ipagpatuloy ang proseso kahit na mangyari ang mga error, gumamit ng IGNORE option. Ito ay lalaktawan ang mga problematic rows habang nag-i-import pa rin ng natitira na data:

LOAD DATA INFILE '/path/to/data.csv' INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'n'
IGNORE 1 LINES
IGNORE;

7. Konklusyon

Ang pag-import ng CSV files sa MySQL ay isang makapangyarihang tool para sa pag-manage ng malalaking datasets at pag-migrate ng data sa pagitan ng mga system nang mahusay. Sa pamamagitan ng pag-master ng basics at pag-aaral kung paano hawakan ang errors at duplicates, maaari mong tiyakin ang maaasahan at stable na data imports.

Sa mga artikulo sa hinaharap, tatalakayin din namin kung paano i-export ang data mula sa MySQL databases upang lalong mapahusay ang iyong data management skills.