`

[转]mysql批量导入已经格式好的文本数据

阅读更多
				LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
		
				    [REPLACE | IGNORE]
		
				    INTO TABLE tbl_name
		
				    [CHARACTER SET charset_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 LOCAL INFILE 'C:\\stu.txt' INTO TABLE stu;
因为这是一条SQL语句,你同样可以在你的JAVA程序序中用:
st.execute(“LOAD DATA LOCAL INFILE 'C:\\stu.txt' INTO TABLE stu”);
(st表示Statement的一个实例变量,假设数据库连接,st的初使化已经完成)
 
创建stu表:
create table stu_other(id int auto_increment primary key,stu_name varchar(50),age int);
 
然后创建一个文本文件“stu.txt”,每行包含一个记录,放在C盘的根目录下。默认的字段分隔符是(tab),你可以更改,下面说明。并且以CREATE TABLE语句中列出的列次序给出。对于丢失的值(例如未知的性别,或仍然活着的动物的死亡日期),你可以使用NULL值。为了在你的文本文件中表示这些内容,使用\N(反斜线,字母N)。
 
如stu.txt的内容如下:
100001    FLB100001     100001
100002    FLB100002     100002
100003    FLB100003     100003
100004    FLB100004     100004
100005    FLB100005     100005
100006    FLB100006     100006
100007    FLB100007     100007
100008    FLB100008     100008
这里我用的是table分开。
 
要想将文本文件“stu.txt”装载到stu表中,使用这个命令:
mysql> LOAD DATA LOCAL INFILE 'c:\\stu.txt' INTO TABLE stu;
这里没有指定字段分隔符,以及行的终止符,默认情况下是这样的:
字段分隔符:
				FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\'
		
				其中的'\t'就表示是字段分隔符为tab键,如果不想更改,那就把FIELDS TERMINATED BY '\t'中的'\t'改在你自己的分隔符。将执行命令改成这样:
		
mysql> LOAD DATA LOCAL INFILE 'c:\stu.txt' INTO TABLE stu fields terminated by ‘ ‘;
这里我用的是空格。
行终止符:
				LINES TERMINATED BY '\n' STARTING BY ''
		
 
请注意如果用Windows中的编辑器(使用\r\n做为行的结束符)创建文件,应使用:
 
mysql> LOAD DATA LOCAL INFILE 'C:\\stu.txt' INTO TABLE stu
    -> LINES TERMINATED BY '\r\n';
(在运行OS X的Apple机上,应使用行结束符'\r'。)
 
如果你愿意,你能明确地在LOAD DATA语句中指出列值的分隔符和行尾标记,但是默认标记是定位符和换行符。这对读入文件“stu.txt”的语句已经足够。
 
另外,还可以使用SELECT ... INTO OUTFILE 将数据导入到外部文件中,如下:
select * from stu_t into outfile "c:\\stu_t.txt";
不过,没有按记录自动分行
这样才能够换行:
select * from stu_t into outfile "c:\\stu_t.txt" lines terminated by '\r\n';
 
所有实例都是经过测试的,运行成功。
 
 

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1820153

分享到:
评论

相关推荐

    mysql遇到load data导入文件数据出现1290错误的解决方案

     准备好文本数据: xueshengxinxi.txt 文件 数据之间以tab键进行分割  执行 “load data infile 文本数据路径 into table tab_load_data” 弹出错误。 #load data (载入数据)语法,要载入数据如下: 1 张三 男...

    纯真ip数据库MySQL版

    sunwe(云飞扬)转制 1,数据来源于QQip数据库纯真版. 2,本数据包包含全面,包括...3,另外,本数据包另附转化好的 纯真ip数据文本文件.(已经经过空格批量替换和插入间隔符',' 这样可以方便直接导入其他类型的数据库)

    MySQL 5权威指南(第3版) 中文版 下载地址

     22.11 mysqlimport程序(文本导入、批量导入)  22.12 mysqlshow程序(查看信息)  22.13 myisamchk程序(修复MyISAM文件)  22.14 myisampack程序(压缩MyISAM文件)  第23章 MySQL API应用指南  23.1 ...

    MySQL5 权威指南第3版中文版_part1

     22.11 mysqlimport程序(文本导入、批量导入)  22.12 mysqlshow程序(查看信息)  22.13 myisamchk程序(修复MyISAM文件)  22.14 myisampack程序(压缩MyISAM文件)  第23章 MySQL API应用指南  23.1 ...

    帝国备份王2008开源版下载 (MYSQL专用备份工具)

    支持批量替换备份目录文件内容,非常方便的文本替换功能。 5、多语言 系统默认内置“简体中文(gb2312)”、“简体中文(utf-8)”、“繁体中文(gb2312)”、“繁体中文(utf-8)”。 用户也可增加语言包,制作更多的语言...

    XlsToMy Excel转MySQL工具 v3.7官方版

    为您提供XlsToMy Excel转MySQL工具下载,XlsToMy是一款功能强大的Excel转MySQL工具,软件功能强劲,便捷好用,支持帮助数据库管理员和数据库程序员批量把Excel数据导入到MySQL数据库。功能介绍 从Excel表中读取数据...

    帝国备份王(Empirebak) 2010 官方版.zip

    2、不同MYSQL版本数据平滑转换,可直接备份与恢复 系统自动识别MYSQL版本格式,然后进行转换恢复; 不同编码数据库之间可直接备份与恢复,系统自动识别数据编码; 系统支持完整备份,即使备份与恢复两个数据表结构不...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例244 将文本文件中数据存储到数据库中 316 4.5 文件的压缩与解压 318 实例245 PHP中压缩RAR文件 319 实例246 PHP中将上传文件转换成RAR文件 320 实例247 PHP中对RAR文件进行解压 321 实例248 PHP中压缩ZIP文件 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例244 将文本文件中数据存储到数据库中 316 4.5 文件的压缩与解压 318 实例245 PHP中压缩RAR文件 319 实例246 PHP中将上传文件转换成RAR文件 320 实例247 PHP中对RAR文件进行解压 321 实例248 PHP中压缩ZIP文件 ...

    R语言从入门到精通系列之数据导入实战视频课程

    本篇首先介绍了如何将txt、csv、非机构花文本文件数据导入到R语言中,并介绍了四种导入excel数据的方法,在介绍R与MySQL数据库管理中,详细介绍了ROBBC包和RMySQL包的安装及使用;后介绍了网络数据爬虫技术,包括...

    PHP程序开发范例宝典III

    实例173 SQL Server数据导入到MySQL数据库 266 实例174 Aceess数据导入到MySQL数据库 268 6.12 分页技术 270 实例175 查询结果的分页显示 271 实例176 单击页码跳转到指定页 272 实例177 输入页码跳转到...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    【源码】mysql版本_spring3.0 系统模块 1. 组织管理:角色管理,分角色组和成员,有组权限和成员权限。 2. 系统用户:对各个基本的组会员增删改查,单发、群发邮件短信,导入导出excel表格,批量删除 3. 会员管理:...

    易语言程序免安装版下载

     静态编译后的易语言EXE/DLL之间不能再共享譬如窗口、窗口组件等类似资源,对于已经静态连接到一个EXE/DLL中的支持库,该支持库中的数据或资源将不能再被其它EXE/DLL中所使用的同名支持库访问。这是因为代码被分别...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例076 批量替换某一类字符串 95 实例077 把异常与错误信息显示到窗体中 97 实例078 从字符串中分离文件路径、 文件名及扩展名 98 实例079 判断手机号的合法性 99 实例080 用字符串构建器追加字符 100 实例081 去掉...

    毕业设计,基于SpringBoot+SpringCloud+Vue开发的前后端分离的在线考试系统,内含完整源代码,数据库脚本

    完成了遗传算法自动组卷、文本批量导入题库,邀请码加入课程、数据可视化等一系列前后端功能。 本项目为本人毕业设计,未经许可,不可用于任何商业用途。禁止通过该项目进行毕设项目买卖 第一次接触SpringBoot和...

Global site tag (gtag.js) - Google Analytics