load data infile语法

本文详细介绍了 MySQL 中 LOAD DATA INFILE 语句的使用方法,包括如何加载本地文件到数据库表中、如何设置字段分隔符及引用符等。此外还探讨了 low_priority 和 LOCAL 关键词的作用,以及 replace 和 ignore 选项对重复记录的处理方式。

load data [low_priority] [local] infile 'file_name.txt' [replace | ignore]

  into table tbl_name

  [fields

  [terminated by 't']                 //遇到某符号(t表示符号)分隔的字符串跳过

  [optionally | enclosed by '']    //用于控制字段的引号

  [escaped by '\' ]]                   //去掉指定字符

  [lines terminated by 'n']        //遇到n符号终止

  [ignore number lines]            //忽略某行

  [(col_name,...)]                     //用来设定只输入资料到某些字段

 

  例如:mysql >load data infile '/tmp/lq20.txt' into table gk2009.mylq fields terminated by ',' enclosed by '"' lines terminated by '\r\n';

 

  ***如果指定关键词low_priority(低优先级)LOAD DATA语句的执行被推迟到没有其他客户读取表后。

  ***如果指定LOCAL关键词,从客户主机读文件。如果LOCAL没指定,文件必须位于服务器上。

  ***replaceignore关键词控制对现有的唯一键记录的重复的处理。如果指定replace,新行将代替有相同的唯一键值的现有行。如果你指定 ignore,跳过有唯一键的现有行的重复行的输入。如果你不指定任何一个选项,当找到重复键键时,出现一个错误,并且文本文件的余下部分被忽略。(如果你使用local关键词从一个本地文件装载数据,服务器没有办法在操作的当中停止文件的传输,因此缺省的行为好像ignore被指定一样。)

  ***注意检查导入后有没有导入不可见符号,例如\r

还可以制定字符集,在into table后添加:

character set utf8

更详尽查看MySQL官方手册,还有很多内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值