Linux 用 shell 腳本 批量 導入 csv 文件 到 mysql 數據庫


前提: 每個csv文件第一行為字段名

    創建的數據庫字段名同csv 文件的字段名

1. 批量導入 多個 csv 文件

for file in ./*.csv;do mv $file tablename.csv;mysqlimport --local --fields-terminated-by="," -uusename -ppassword databasename tablename.csv;rm tablename.csv;done

(改腳本在導入數據的同時會刪除文件 別忘記在導入數據庫前備份文件啊)

2. 導入一個 csv 文件

mysql --local-infile -uusename -ppassword databasename -e "LOAD DATA LOCAL INFILE '1.csv' INTO TABLE tablename FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'"

(',' 和 '\r\n' 是根據你的csv 文件決定的 第一個是 字段分割的標志,第二個是行分割的標志)

(--local-infile: 沒有這個會報錯【ERROR 1148 (42000) at line 1: The used command is not allowed with this MySQL version】)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM