博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL基础之---mysqlimport工具和LOAD DATA命令导入文本文件
阅读量:6251 次
发布时间:2019-06-22

本文共 2010 字,大约阅读时间需要 6 分钟。

 1、mysqlimport工具的使用

看一下命令的使用方法:

shell > mysqlimport -u root -p [--LOCAL] DBname  File  [option]
--fields-terminated-by=name           字段分隔符 --fields-enclosed-by=name            字段引用符 --fields-optionally-enclosed-by=name      字段引用符(只在CHAR、VARCHAR、TEXT等字符型字段上使用) --fields-escaped-by=name            转移字符 --lines-terminated-ny=name           记录结束符 --ignore-lines=number              忽略前几行

注意:如果导入导出是跨平台操作的(比如Windows和Linux),那么就要注意设置参数line-terminated-by,因为两个操作系统的行结尾符是不一样的。Windows上是:line=terminated-by='\r\n',Linux上设置为:line-terminated='\n'。

 案例演示:

[tidb@:vg_adn_tidbCkhsTest /tmp/bak]$mysql -uroot -p123456 -P 3306 mob_adn < test.sql               mysql: [Warning] Using a password on the command line interface can be insecure.[tidb@:vg_adn_tidbCkhsTest /tmp/bak]$mysqlimport -uroot -p123456 -P 3306 -h 127.0.0.1 mob_adn /tmp/bak/test.txt --fields-terminated-by='\t' --fields-optionally-enclosed-by='"'mysqlimport: [Warning] Using a password on the command line interface can be insecure.mob_adn.test: Records: 1  Deleted: 0  Skipped: 0  Warnings: 0

由于mysqldump导出来的数据有两个文件,一个是sql文件,一个是txt文件。所以这里先导入表的创建语句,即sql文件。然后再导入txt的文本文件

2、使用LOAD   DATA  INFILE方式导入文本文件

LOAD DATA [LOCAL] INFILE 'filename' INTO TABLE dataname.tablename [OPTION] [IGNORE number LINES]fields terminated by 'VALUE'fields [OPTIONALLY]  ENCLOSED BY 'VALUE'fields ESCAPED BY 'VALUE'lines STARTING by 'VALUE'lines terminated by 'VALUE'

[LOCAL]表示如果是本地文件导入需要加上此参数

● fields子句:在FIELDS子句中有三个子句:TERMINATED BY、 [OPTIONALLY] ENCLOSED BY和ESCAPED BY。

如果指定了FIELDS子句,则这三个子句中至少要指定一个。

(1)TERMINATED BY用来指定字段值之间的符号,例如,“TERMINATED BY ','”指定了逗号作为两个字段值之间的标志,默认为“\t”制表符。
(2)ENCLOSED BY子句用来指定包裹文件中字符值的符号,例如,“ENCLOSED BY ' " '”表示文件中字符值放在双引号之间,

若加上关键字OPTIONALLY表示所有的值都放在双引号之间,则只有CHAR和VARCHAR等字符数据字段被包括。

(3)ESCAPED BY子句用来指定转义字符,例如,“ESCAPED BY '*'”将“*”指定为转义字符,取代“\”,如空格将表示为“*N”。

● LINES子句:在LINES子句中使用TERMINATED BY指定一行结束的标志,如“LINES TERMINATED BY '?'”表示一行以“?”作为结束标志,默认值为“\n”。

LINES STARTING BY ''表示每行数据开头的字符,可以为单个或多个,默认不是有任何字符.

转载于:https://www.cnblogs.com/FengGeBlog/p/9975043.html

你可能感兴趣的文章
经典SQL语句大全
查看>>
升级fedora 18到fedora 19
查看>>
Dictionary和数组查找效率对比
查看>>
alias命令详情
查看>>
自定义异步加载资源插件
查看>>
easyui combobox两种不同的数据加载方式
查看>>
Smarty配置与实例化
查看>>
***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象...
查看>>
Siege——多线程编程最佳实例
查看>>
c# 生成 验证码
查看>>
SQL Server 触发器
查看>>
何为SLAM
查看>>
[工具]infolite-chrome插件css插件
查看>>
javascript 深拷贝
查看>>
【代码小记】无
查看>>
【知识点】Java机密
查看>>
BarTender 2016表单中的“秤显示”控件
查看>>
全面理解javascript的caller,callee,call,apply概念[转载]
查看>>
Jquery 下拉框取值
查看>>
IDEA中使用Maven创建Java Web项目
查看>>