LOAD DATA INFILE导入数据

语法:

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE ''
[REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char' ]
]
[LINES
[STARTING BY 'string']
[TERMINATED BY 'string']
]
[IGNORE number LINES]
[(col_name_or_user_var,...)]
[SET col_name = expr,...)]

LOAD DATA 命令中的默认值:
FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\'
LINES TERMINATED BY '\n' STARTING BY ''

文件参数:

LOCAL参数:
1、如果指定了LOCAL,则文件会被客户主机上的客户端读取,并被发送到服务器。文件会被给予一个完整的路径名称,以指定确切的位置。如果给定的是一个相对的路径名称,则此名称会被理解为相对于启动客户端时所在的目录。
2、如果LOCAL没有被指定,则文件必须位于服务器主机上,并且被服务器直接读取。 当在服务器主机上为文件定位时,服务器使用以下规则:
1、如果参数为绝对路径,则MySQL使用该绝对路径
2、如果参数为带目录的相对路径,则MySQL会相对于数据目录进行文件查找
3、如果参数为不带目录的文件名,则MySQL会在数据目录下进行文件查找

LOAD DATA LOCAL命令运行将本例文件加载到数据库中,存在安全问题,可以使用--local-infile=0来从服务器端禁用LOAD DATA LOCAL命令。

LOAD DATA LOCAL命令只能针对单个文件进行数据导入。

MYSQLIMPORT使用LOAD DATA INFILE的命令接口,可以使用--user-thread选项来设置导入数据的并发线程,其本质是同时执行多个LOAD DATA INFILE的命令。

LOAD DATA INFILE模板

如果文件使用MYSQLDUMP -tab 或SELECT INTO OUTFILE导出,那么可以使用LOAD DATA INFILE来导入。
常用导入模板:

LOAD DATA INFILE '/backup/TB001.txt' INTO TABLE TB001(id,c1)
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 0 LINES

执行SQL命令文件

对于包含SQL命令的文件,可以使用mysql命令执行,也可以在登录MySQL后使用source命令执行,建议使用mysql方式:

1、可以使用--force参数来控制是否出错后执行

2、可以使用--verbose参数输出执行结果,并将正常结果和异常结果分开存放,方便查看

如果使用source命令,中间命令执行失败后仍会继续执行后续命令,并很可能被后续执行结果“覆盖”导致错误被忽略

如果希望使用mysql命令来执行命令文件且想使用事务,可以在命令开始和命令结束添加"BEGIN"+“COMMIT”,然后将--force参数设置为False,当执行失败后会自动回滚并退出。

如果希望使用source命令来执行命令文件且想使用事务,不能在文件中使用"BEGIN"+“COMMIT”,需要在SOURCE命令外部使用"BEGIN"+“COMMIT”,在判断SOURCE执行结果后确定是COMMIT还是ROLLBACK。

MySQL Inport--导入数据的更多相关文章

  1. mysql加速导入数据的简单设置

    mysql加速导入数据的简单设置 # 修改前查询参数值 show variables like 'foreign_key_checks'; show variables like 'unique_ch ...

  2. 用python批量向数据库(MySQL)中导入数据

    用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...

  3. 搜索引擎Solr系列(二): Solr6.2.1 从MySql中导入数据

     一:建立MySql测试表,如下图: 二:solr导入配置: 1.新建demo core文件夹,并修改managed-schema里面的配置文件建立索引字段: 2.把mysql-connector-j ...

  4. MYSQL数据库导入数据时出现乱码的解决办法

    我的一个网站在负载搞不定的情况下最终选择了数据库和程序分离的方式解决的高负载,但是再导入数据的时候出现了大量乱码,最终通过方法二解决掉导入数据的问题,后面再设计网站布局的时候数据库跟网站程序分离是个很 ...

  5. Mysql mysqlimport 导入数据

    在mysql 数据库中可以用 mysqlimport 工具来实现数据的导入!mysqlimport 导入数据简单,但是这个也要满足一定的条件 1.既然是把数据导入到数据库,你总有一个数据库用户账号吧 ...

  6. mysql导出导入数据

    使用sql语句导出数据: 导出时如果不写绝对路径,会提示The MySQL server is running with the --secure-file-priv option so it can ...

  7. mysql 导出导入数据 -csv

    MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into outfile 'e://output ...

  8. mysql本地导入数据

    1.获得一个超级权限的用户 grant all on *.* to root@'127.0.0.1' identified by 'root';# 因为我想在本地导入数据,而数据就在本地.# 有时候, ...

  9. 关于mysql 表导入数据

    一.实验准备: 1.实验设备:Dell laptop 7559; 2.实验环境:windows 10操作系统; 3.数据库版本:mysql 8.0; 二.实验目的: 1.将一个宠物表pet.txt文件 ...

  10. MySQL 加快导入数据

    1.临时关闭binlog,避免写入日志 set sql_log_bin = off: mysql> show VARIABLES like '%log_bin%'; +------------- ...

随机推荐

  1. sas 选择一段日期,和一定周期,生成日期序列和周期序列

    工作需要,得选择一段日期,和一定周期,生成日期序列和周期序列.暂时用七天为一个周期 data d; format date date9.; do date='04mar2018'd to'05may2 ...

  2. CreateThread和_beginthread区别及使用

    CreateThread 是一个Win 32API 函数, _beginthread 是一个CRT(C Run-Time)函数, 他们都是实现多线城的创建的函数,而且他们拥有相同的使用方法,相同的参数 ...

  3. scanf *的用法

    scanf *的用法           char a[LEN]="12:13:14";     char i,j,k,h,l,m; sscanf(a,"%*c%*c:% ...

  4. vue-cli快速构建vue项目模板

    vue-cli 是vue.js的脚手架,用于自动生成vue.js模板工程的. 1.使用npm安装vue-cli 需要先装好vue 和 webpack(前提是已经安装了nodejs,否则连npm都用不了 ...

  5. Final阶段第1周/共1周 Scrum立会报告+燃尽图 05

    作业要求[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2484] 版本控制:https://git.coding.net/liuyy08 ...

  6. background低版本安卓浏览器不支持复合属性,要分开写

    background:url("http://..../xxx.jpg") no-repeat center/cover; 这种复合形式在有些低端安卓浏览器中不支持,最好分开写: ...

  7. 利用python库计算person相关系数

    使用numpy库,可以实现person相关系数的计算,例如对于矩阵a. a Out[235]: array([[1, 1, 2, 2, 3], [2, 2, 3, 3, 5], [1, 4, 2, 2 ...

  8. 【Python】管道通信和condition

    #练习:管道练习,双工,单工,将受到的消息保存到文件中 import multiprocessing as mp from multiprocessing import Process,Lock de ...

  9. JAVA接口传递参数(POST),从接口接收数据(JSON) -----记录

    1,给接口传递json格式的数据 import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOEx ...

  10. ubuntu discuz 该函数需要 PHP 支持 XML。请联系空间商,确定开启了此项功能

    apt-get install php-xml apt-get install php-xml-parser