现有数据如下:
先创建一个表
create database dd;
use dd;
create table biao2(
data1 int ,
name_of varchar(8) not null ,
linetype varchar(8) not null ,
start1 varchar(8) not null ,
end1 varchar(8),
number_of_worker int,
time_euse int,
total_of_goods int,
turnover_of_goods double,
goods varchar(8),
turnover double
);
show variables like '%secure%';
#'D:\\data_route_english.csv'
#'C:\\ProgramData\\MySQL\\MySQL Server 8.0\\Uploads\\biao11.csv'
#用workbench导入
#然后通过load data infile命令在该表中追加数据
LOAD DATA INFILE 'C:\\ProgramData\\MySQL\\MySQL Server 8.0\\Uploads\\data_route_english.csv' #一般直接将文件放在Uploads文件夹里面
#注意如果你要导入的数据没有放到上面的C:\\ProgramData\\MySQL\\MySQL Server 8.0\\Uploads\\的文件加中,
#而是随便将数据放在了一个文件夹中,执行命令的时候就会出现错误提示
#Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement0.000 sec
#下面继续上面的命令
INTO TABLE biao2
FIELDS TERMINATED BY '\,'
OPTIONALLY ENCLOSED BY '\"'
LINES TERMINATED by'\r\n'
ignore 1 lines; #跳过第一行的意思
#select * from biao2;
然后可以看到数据导入成功了
注意几点:1.用load infile data命令导入csv数据的时候需要将数据放到特定的文件夹下,当然这个特定的文件夹路径可以通过设置的方式修改,修改起来比较麻烦,最好不要修改这个默认的安全路径,而是直接将需要导入的文件放入这个默认的安全路径下。
2.如果用workbench向导菜单式操作导入数据的话,不需要注意这个路径问题,数据可以放到任意的文件夹下,然后导入,只有load infile data的命令才会有这个限制。
3.执行查询语句的时候一定要注意有两个执行按钮,第一个执行按钮是执行选中的代码或者是执行整个文件,而第二个按钮是执行光标下面的代码,这个一定要注意。通常都是点击第一个按钮。
4.如果你要导入的csv文件的表格第一行为中文名字的话也没有关系,因为上面的命令写了忽略第一行
5.LOAD DATA INFILE后面的路径必须要用转义字符,否则mysql无法识别,会提示
Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
但其实根本不是这个原因导致的,这会很坑,大家一定要注意





