load data infile 'CSV文件存放路径'
into table 表名
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\r\n'
或者下载个sqlyog之类的可以直接导
或者打开csv文件 用excel内置函数拼接 insert into 语句
导入 *** 作存在特殊字符情况的处理
Book1.csv
编号,名称,说明1,测试数据1,"测试CSV文件中,有逗号"2,测试数据2,"测试CSV文件中有""双引号"""3,测试数据3,"测试CSV文件中,有逗号和""双引号"""4,测试数据4,普通数据
mysql>CREATE TABLE Test_Book1 (
-> idint,
-> name VARCHAR(10),
-> data VARCHAR(100)
->)
Query OK, 0 rows affected (0.05 sec)
下面的 lines terminated by '\r\n' 是 要求换行符号,为 windows的换行
下面的 ignore 1 lines是 忽略第一行的标题行。
mysql>LOAD DATA INFILE 'f:/Book1.csv'
->INTO TABLE Test_Book1
->FIELDS TERMINATED BY ','
->OPTIONALLY ENCLOSED BY '"'
->lines terminated by '\r\n'
->ignore 1 lines
->(id, name, data)
Query OK, 4 rows affected (0.00 sec)
Records: 4 Deleted: 0 Skipped: 0 Warnings: 0
mysql>select * from test_book1
+------+-----------+--------------------------------+
| id | name | data |
+------+-----------+--------------------------------+
|1 | 测试数据1 | 测试CSV文件中,有逗号 |
|2 | 测试数据2 | 测试CSV文件中有"双引号"|
|3 | 测试数据3 | 测试CSV文件中,有逗号和"双引号" |
|4 | 测试数据4 | 普通数据 |
+------+-----------+--------------------------------+
4 rows in set (0.00 sec)
1、LOAD DATA通过读取本地文件系统上的文件,可以将大量数据添加到数据库中。mysql>USE db1
mysql>LOAD DATA INFILE ‘datafile.txt’ INTO TABLE db2.table_name
2、mysqlimport命令直接从文件读取批量数据。它相当于LOAD DATA语句的一个接口。
mysqlimport根据文件名导入表名,即将文件名第一个圆点前的所有字符作为表名。例如,文件class.txt被装入class表中。
mysqlimport -L -uroot -proot db01 table_name.txt;
3、假如你原来表为T1表,数据导入到了T2表。可以用
insert into T1 select * from T2
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)