利用load data infile命令向MySQL导入CSV文件

MySQL导入CSV文件有两种方式:

一是使用navicat、workbench等图形化管理工具手动导入;

二是使用load data infile命令导入。

我们这里介绍使用load data infile命令导入CSV文件。

前期准备:

(1)CSV文件编码格式设置为UTF-8。用记事本打开,另存为编码选择utf-8后保存;

导入步骤:

1.将CSV文件放入正确的路径下

一定要将CSV文件放到C:\ProgramData\MySQL\MySQL Server 8.0\Uploads  下,

ProgramData是C盘中的一个隐藏文件夹,记得显示出来!!!

2.导入CSV文件

 LOAD DATA INFILE 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/t_press.csv' INTO TABLE t_press1 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 ROWS;

注意:如果CSV文件中有列标题(字段名)的话,要写上IGNORE 1 ROWS,意思是省略第一行;如果CSV文件中没有字段名,全部都是数据,不必要写IGNORE 1 ROWS。

出现Data too long……,在窗口中输入以下命令:

set @@global.sql_mode='';   注意:重新打开窗口才生效!!!

再次输入LOAD DATA INFILE 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/t_press.csv' INTO TABLE t_press1 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 ROWS;

显示成功,查看t_press1下的数据,可以看到已经导入进来啦!

LOAD DATA INFILE语句用于将CSV文件的数据导入MySQL表中。下面是LOAD DATA INFILE语句的一般使用方法: ```sql LOAD DATA INFILE 'path_to_csv_file' INTO TABLE table_name FIELDS TERMINATED BY ',' -- 指定CSV文件中字段的分隔符 ENCLOSED BY '"' -- 指定CSV文件中字段的引号字符 LINES TERMINATED BY '\n' -- 指定CSV文件中行的分隔符 IGNORE 1 ROWS; -- 可选,忽略CSV文件中的表头行 ``` 具体说明如下: - `'path_to_csv_file'`:CSV文件的路径,可以是相对路径或绝对路径。 - `table_name`:要导入数据的目标表名。 - `FIELDS TERMINATED BY ','`:指定CSV文件中字段的分隔符。常见的分隔符是逗号(,)。 - `ENCLOSED BY '"'`:指定CSV文件中字段的引号字符。如果CSV文件中的字段没有被引号包围,可以省略该选项。 - `LINES TERMINATED BY '\n'`:指定CSV文件中行的分隔符。常见的分隔符是换行符(\n)。 - `IGNORE 1 ROWS`:可选,表示忽略CSV文件中的表头行。如果CSV文件中包含表头行,可以使用该选项进行忽略。 注意事项: - 在使用LOAD DATA INFILE语句导入数据之前,确保MySQL用户具有文件读取权限,并且CSV文件的路径是可访问的。 - 确保CSV文件的字段与目标表的字段一一对应,并且数据类型匹配。 - 如果CSV文件中的数据存在错误或格式问题,可能导致导入失败。在导入之前,最好预览和检查CSV文件的内容。 这是LOAD DATA INFILE语句的一般用法,你可以根据实际情况进行调整和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值