温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MySQL 5.5如何使用LOAD DATA INFILE语句导入数据

发布时间:2021-10-29 17:45:31 来源:亿速云 阅读:274 作者:小新 栏目:MySQL数据库

这篇文章主要介绍了MySQL 5.5如何使用LOAD DATA INFILE语句导入数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

相关参数:

local 从客户端主机读取文本文件
ignore 如果你指定了这个参数,则重复的记录会被跳过
replace 如果你指定了这个参数,,则重复的记录会被覆盖掉
IGNORE number LINES 导入的时候跳过指定的前几行
例如:LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test IGNORE 1 LINES;
FIELDS TERMINATED BY 指定列的分隔符,默认是\t
ENCLOSED BY 指定列的包括符,默认是空
例如:load data infile '/tmp/load_starting.txt' into table load_test fields terminated by ',' optionally enclosed by '"' lines starting by 'Neo';
ESCAPED BY 指定转义符,默认是\
例如:load data infile '/tmp/ld_t2.csv' into table ld_t2 fields terminated by ',' enclosed by '"' escaped by '|';
LINES TERMINATED BY 指定换行符,默认是\n
例如:load data infile '/tmp/ld_t5.csv' into table ld_t5 fields terminated by ',' enclosed by '"' escaped by '|' lines terminated by '\r\n';
LINES STARTING BY 指定每行开始的字符

注意:
每次执行LOAD DATA INFILE语句,都会将被导入表中的数据清空。

--导入示例
--查看导入文件文件的内容
[root@localhost fire]# cat /tmp/dept.txt 
10,ACCOUNTING,NEW YORK
20,RESEARCH,DALLAS
30,SALES,CHICAGO
40,OPERATIONS,BOSTON
50,MAINTENANCE,HULUDAO

--根据字段格式创建表
mysql> CREATE TABLE `test` (
    ->   `deptno` int(11) NOT NULL DEFAULT '0',
    ->   `dname` varchar(15) NOT NULL,
    ->   `loc` varchar(15) NOT NULL
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.20 sec)

--使用root用户导入文本文件中的内容到对应的表中
mysql> use fire
Database changed
mysql> load data infile '/tmp/dept.txt' into table test charset gbk fields terminated by ',';
Query OK, 5 rows affected (0.07 sec)
Records: 5  Deleted: 0  Skipped: 0  Warnings: 0

--查询导入表中的内容
mysql> select * from test;
+--------+-------------+-----------+
| deptno | dname       | loc       |
+--------+-------------+-----------+
 |    10 | ACCOUNTING  | NEW YORK
   |  20 | RESEARCH    | DALLAS
  |   30 | SALES       | CHICAGO
   |  40 | OPERATIONS  | BOSTON
  |   50 | MAINTENANCE | HULUDAO
+--------+-------------+-----------+
5 rows in set (0.00 sec)

--指定列名导入
load data infile '/tmp/ld_t7.csv' into table ld_t7 fields terminated by ',' enclosed by '"' (id, uname, email, age);

感谢你能够认真阅读完这篇文章,希望小编分享的“MySQL 5.5如何使用LOAD DATA INFILE语句导入数据”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI