从文件中导入数据到数据库,通过以下语句进行操作:
LOAD DATA INFILE "E:/Data/200W-400W.csv"
REPLACE INTO TABLE person_info
CHARACTER SET utf8
FIELDS TERMINATED BY "," ENCLOSED BY ""
LINES TERMINATED BY "\r\n";
如果导入的时候出现:truncated字样,则是SQL_MODE问题,修改sql_mode就可以了;
show variables like '%sql_mode%';
set sql_mode='no_auto_create_user,no_engine_substitution';
如出现错误:ERROR 1262 (01000): Row 6737 was truncated; it contained more data than there were input columns.
如:文件中出现,,空字符,正常情况下会出错,需要修改sql_mode后才能导入(会有正常警告);
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------以下搜索来源于网络
Mysql导入csv文件
MYSQL LOAD DATA INFILE命令可以把csv平面文件中的数据导入到数据库中。linux下:
LOAD DATA INFILE '/home/test/dump/ip_location.csv'
INTO TABLE ip_location
CHARACTER SET utf8
FIELDS TERMINATED BY ',' ENCLOSED BY '"';
--CHARACTER SET :mysql字符集,一定要加上,免去乱码麻烦
--INTO TABLE :导入到哪个表
--FIELDS TERMINATED BY :以什么作为分割符
-- ENCLOSED BY :被什么包围
windows下:
LOAD DATA INFILE "d:/insert_data.csv"
REPLACE INTO TABLE DEMO
CHARACTER SET gb2312
FIELDS TERMINATED BY "," ENCLOSED BY ""
LINES TERMINATED BY "\r\n";
--LINES TERMINATED BY:这个与linux不同,以什么作为一行的结尾。