开发指南—DML语句—LOAD DATA

简介: 本文介绍在PolarDB-X中使用load data进行数据导入的相关限制和注意事项。

本文介绍在PolarDB-X中使用load data进行数据导入的相关限制和注意事项。

注意事项

  • 使用load data进行数据导入时,load data语句并非一个事务,因此各种原因(如数据库宕机等)可能导致部分数据插入,剩余部分未插入。
  • 客户端需要开启local-infile

语法


LOAD DATA   
    [LOCAL] 
    INFILE 'file_name' 
    [REPLACE | IGNORE] 
    INTO TABLE tbl_name 
    [CHARACTER SET charset_name] 
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string'] 
        [ENCLOSED BY 'char'] 
        [ESCAPED BY 'char'] 
    ]
    [LINES
        [STARTING BY 'string'] 
        [TERMINATED BY 'string'] 
    ]
    [IGNORE number {LINES | ROWS}] 
    [(col_name_or_mask [, col_name_or_mask] ...)]

参数说明

参数名称 说明
LOAD DATA [LOCAL] INFILE 文件位于服务端还是client端。
file_name 使用相对路径时,为相对于客户端启动时的路径。
REPLACE 导入数据时,遇到主键重复则强制用当前数据覆盖已有数据。
IGNORE 导入数据时,遇到主键重复则自动忽略该行。
[FIELDS] TERMINATED BY 'string' 定义每行数据的分隔符,默认为\t
[FIELDS] ENCLOSED BY 'char' 每列数据的包围符。例如,某一列数据为"test",定义enclosed by '"'后,导入数据时先将"test"前后的"移除,然后再导入数据。
[LINES] TERMINATED BY 'string' 定义行分隔符,默认为\n
IGNORE number LINES 导入数据时忽略开始的某几行。例如,IGNORE 1 LINES,导入数据时忽略第一行数据。
(col_name_or_mask [, col_name_or_mask] ...)
  1. 设置导入的列,如果不设置,默认按照表中的列顺序来导入数据。
  2. 掩盖掉文件中的某些列,使文件中对应列失效,例如,table test(x int, y int),导入文件有三列,导入时使用 (x, @name, y) 则会忽略文件中的第二列,使用第一列填充x,使用第二列填充y。

示例

创建测试表:


CREATE TABLE test ( a int(11) NOT NULL DEFAULT '0',  b varchar(8) NOT NULL,  PRIMARY KEY (a)  ) DBPARTITION by hash(a);

本地待导入文件:


x,y

test1,2
test2,3
test3,4
test4,5
test5,6
test7,8
test8,9

load data语句:


LOAD DATA LOCAL INFILE '~/test.txt' IGNORE INTO TABLE test FIELDS TERMINATED BY ',' LINES STARTING BY 'test' TERMINATED BY '\n' IGNORE 1 LINES;

结果如下:


mysql> select * from test order by a;
+------+------+
| a | b |
+------+------+
| 1 | 2 |
| 2 | 3 |
| 3 | 4 |
| 4 | 5 |
| 5 | 6 |
| 7 | 8 |
| 8 | 9 |
+------+------+
7 rows in set (0.02 sec)
相关文章
|
11月前
|
存储 容器
Flutter 构建自适应布局
Flutter 构建自适应布局
319 2
Flutter 构建自适应布局
|
11月前
|
JavaScript 容器
带方向感知功能的js图片遮罩层插件
带方向感知功能的js图片遮罩层插件
|
11月前
|
数据采集 人工智能 分布式计算
《Java 与大数据框架:AI 数据预处理的强力联盟》
在人工智能领域,数据预处理是确保模型准确性和高效性的关键。Java 与 Hadoop、Spark 等大数据框架的结合,为处理海量数据提供了强大的支持。通过 Java 编写的 MapReduce 和 Spark 程序,可以高效进行数据清洗、转换和特征提取,充分利用分布式计算能力,缩短预处理时间,提升数据质量。Java 在整合这些框架时,不仅实现了任务调度和错误处理,还为未来的优化和技术进步奠定了基础。这一组合为 AI 数据预处理带来了高效的解决方案,推动了人工智能技术的发展。
333 18
|
移动开发 监控 API
2023阿里云域名优惠口令大全(注册/续费/转入)亲测有效
阿里云com域名优惠口令续费69元一年,阿里云cn域名续费优惠口令35元一年,域名优惠口令是阿里云官方推出的针对域名产品注册、转入、续费的优惠码。使用域名优惠口令,可享受一定的促销优惠。本文为您介绍域名优惠口令的使用规则、获取途径及使用方法。
15861 0
2023阿里云域名优惠口令大全(注册/续费/转入)亲测有效
|
NoSQL 固态存储 关系型数据库
TiDB、OceanBase、PolarDB-X、CockroachDB二级索引写入性能测评
二级索引是关系型数据库相较于NoSQL数据库的一个关键差异。二级索引必须是强一致的,因此索引的写入需要与主键的写入放在一个事务当中,事务的性能是二级索引性能的基础。本次测试将重点关注不同分布式数据库的索引性能,特别关注业内全局索引的性能与MySQL索引的性能差异。
TiDB、OceanBase、PolarDB-X、CockroachDB二级索引写入性能测评
|
测试技术 内存技术
|
安全 JavaScript 小程序
云支付官方FAQ
云支付官方小二实时更新的浓缩FAQ,帮助广大服务商快速定位问题。
|
存储 弹性计算 移动开发
阿里云无影云电脑具体价格及连接使用方法教程
阿里云无影云桌面4核8G配置1元首月,199元一年,8核16G配置年付899元。阿里云无影云电脑账号密码创建及连接教程如下
2899 0
阿里云无影云电脑具体价格及连接使用方法教程
|
SQL 安全 API
记第一次挖洞交洞历程
记第一次挖洞交洞历程
794 0
记第一次挖洞交洞历程
|
弹性计算
阿里云备案审核一般多久能过?域名备案需要几天?
阿里云域名备案是大家比较关心的问题,尤其是网站域名备案时间,阿里云备案时间还是比较快的,如果用户材料齐全,提交到阿里云审核无误后,一般一天即可提交到所对应省事的管局,备案号下来的时间要以管局的审核时间为准,一般管局审核时间为10天左右。
1505 0