MySQL 是一个关系型数据库管理系统,广泛用于存储、检索和管理数据。CSV(Comma-Separated Values)是一种常见的数据交换格式,每行代表一条记录,字段之间用逗号分隔。
LOAD DATA INFILE
-- 创建一个示例表
CREATE TABLE example (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255),
age INT
);
-- 导入 CSV 文件
LOAD DATA INFILE '/path/to/your/file.csv'
INTO TABLE example
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
mysqlimport
mysqlimport --local --fields-terminated-by=',' --fields-enclosed-by='"' --lines-terminated-by='\n' --ignore-lines=1 -u your_username -p your_database /path/to/your/file.csv
SELECT ... INTO OUTFILE
SELECT * INTO OUTFILE '/path/to/your/output.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM example;
mysqldump
mysqldump -u your_username -p --tab=/path/to/your/output your_database example
LOAD DATA INFILE
报错原因:可能是文件路径不正确、权限问题或 MySQL 配置问题。
解决方法:
my.cnf
)中的 secure-file-priv
设置。原因:CSV 文件中的数据格式与表结构不匹配,例如字段数不一致、数据类型不匹配等。
解决方法:
LOAD DATA INFILE
的 IGNORE
或 REPLACE
选项处理格式不匹配的数据。原因:MySQL 数据库和 CSV 文件的编码不一致。
解决方法:
SELECT ... INTO OUTFILE
时可以添加 CHARACTER SET utf8mb4
。希望这些信息对你有所帮助!如果有更多具体问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云