创建数据库

  1. create database if not exists `mytestdb` default charset=utf8;
  2. use mytestdb;
说明:
如果使用utf8字符集,则数据库和数据表创建时,都应该指定默认的字符集;


创建数据表

  1. create table if not exists `t_user`(
  2.    `userid` int(11) not null ,
  3.    `userName` varchar(32) not null DEFAULT '',
  4.    `password` varchar(32) DEFAULT null,
  5.    `createTime` time DEFAULT null,
  6.    `currTime` timestamp not null DEFAULT CURRENT_TIMESTAMP,
  7.    `status` tinyint(4) default null,
  8.    `lastLoginTime` datetime DEFAULT null
  9. )ENGINE=BRIGHTHOUSE DEFAULT CHARSET=utf8;

time/datetime/timestamp的区别:
  • time: 表示的仅仅是时间,格式形如:13:45:12;
  • datetime: 表示时间和日期,格式形如:2016-12-14 14:45:12;
  • timestamp: 和datatime对比,表示的时间范围窄,占用的字节少;
 

待导入的数据文件

文件为: /tmp/t_userFile,如下是内容:
  1. 111,Tom  ,pass1  , 13:45:12, \N,1,2016-12-14 14:45:12
  2. 222,Lily ,pass2  ,  14:45:12 ,\N,1,2016-12-14 14:45:12
  3. 333,Keoj ,"pass3,333", 15:03:14,\N, 1 ,2016-12-14 14:45:12
  4. 444,Ladiu, "pass4" , 15:03:14,\N,1,2016-12-14 14:45:12
  5. 555,Jenny,pass5  , 15:03:14,\N,0,2016-12-14 14:45:12\n
  6. 666,Jams ,pass6  , 15:03:14,\N,1,2016-12-14 14:45:12\n
 

导入数据

  1. load data infile '/tmp/t_userFile' into table `mytestdb`.`t_user` fields terminated by ',' optionally enclosed by '"' lines terminated by '\n';
导入SQL说明:
  • fields terminated by ',': 表示字段以“,”分割;
  • optionally enclosed by '"' :表示字段被"\""双引号包围;
  • lines terminated by '\n':表示行以"\n"作为结束符(这是linux系统下的行结束符);
 
对待导入文件的说明:
  • \N:表示null,这里timestamp被置为null,则使用当前时间进行填充;
  • 111记录:\N前面有空格,则转换后的时间为:0000-00-00 00:00:00 ==> \N前面不能有空格
  • ==>若字段为varchar或char类型,则空格也表示为varchar或char的一部分;
  • 222记录:time 前后都有空格,无影响;
  • 333记录:tinyint 前后都有空格,无影响;
  • 333记录:password用引号引起来,由optionally enclosed by '"'可知,引号里面为字段内容,此时“,”不作为字段的分割符,即字段值为 pass3,333;
  • 444记录:password用引号引起来,且前后都有空格,则字段值为:\t"pass"\t(空格算varchar的一部分);
  • 555和666记录:最后都有"\n",这是linux系统默认的换行符,在导入时,有时有问题,有时没问题,没搞清楚;

数据导出后再导入测试

导出文件:
  1. select * from t_user into outfile '/tmp/t_user_split'  fields terminated by '|' OPTIONALLY ENCLOSED BY '$' lines terminated by '\n';
说明:
  • 使用“|” 作为分隔符;
  • 使用“$”表示括起字段;
导出后结果:

再进行导入测试:
  1. load data infile '/tmp/t_user_split' into table `mytestdb`.`t_user` fields terminated by '|' optionally enclosed by '$' lines terminated by '\n';
说明:(保持与导出的数据对应)
  • 使用“|” 作为分隔符;
  • 使用“$”表示括起字段;
 


 
 

【Infobright】infobright数据导入导出测试的更多相关文章

  1. sqoop1的安装以及数据导入导出测试

    下载 wget http://mirror.bit.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 解压 tar -zxf ...

  2. oracle数据导入/导出

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份.   大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据 ...

  3. Oracle数据导入导出imp/exp

    功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失). Oracle有个好处,虽然你的电 ...

  4. Oracle数据导入导出imp/exp命令总结

    racle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利用 ...

  5. Oracle 数据导入导出操作 (转)

    Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢 ...

  6. Java实现大批量数据导入导出(100W以上) -(二)导出

    使用POI或JXLS导出大数据量(百万级)Excel报表常常面临两个问题: 1. 服务器内存溢出: 2. 一次从数据库查询出这么大数据,查询缓慢. 当然也可以分页查询出数据,分别生成多个Excel打包 ...

  7. 通过 Sqoop1.4.7 将 Mysql5.7、Hive2.3.4、Hbase1.4.9 之间的数据导入导出

    目录 目录 1.什么是 Sqoop? 2.下载应用程序及配置环境变量 2.1.下载 Sqoop 1.4.7 2.2.设置环境变量 2.3.设置安装所需环境 3.安装 Sqoop 1.4.7 3.1.修 ...

  8. ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例

    这篇文章主要介绍了ThinkPHP使用PHPExcel实现Excel数据导入导出,非常实用的功能,需要的朋友可以参考下 本文所述实例是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方 ...

  9. Oracle数据导入导出imp/exp命令 10g以上expdp/impdp命令

    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利 ...

随机推荐

  1. [解决方案] pythonchallenge level 5

    l5=requests.get("http://www.pythonchallenge.com/pc/def/banner.p") body = l5.text lists = p ...

  2. BZOJ 1040 树形DP+环套树

    就是有n个点n条边,那么有且只有一个环那么用Dfs把在环上的两个点找到.然后拆开,从这条个点分别作树形Dp即可. #include <cstdio> #include <cstrin ...

  3. Ansible-Tower快速入门-4.以超级用户帐号登录【翻译】

    以超级用户帐号登录 首先,登录tower需要使用tower服务器所在的URL,格式如下:https://<tower server name>/ 注意:tower安装了一个自签名证书用于H ...

  4. SDK截图程序(一)

    程序将系统窗口左上角100*100的图像复制到粘贴板上.程序的关键位置上加上了注释,相关知识<windows程序设计>第14章内容 #include <windows.h> # ...

  5. MSSQL—按照某一列分组后取前N条记录

    以前在开发的时候遇到过一个需求,就是要按照某一列进行分组后取前几条数据,今天又有同事碰到了,帮解决了之后顺便写一篇博客记录一下. 首先先建一个基础数据表,代码如下: IF OBJECT_ID(N'Te ...

  6. Python 基礎 - 元組與簡易購物車實做

    tuple(元組) 其實跟列表差不多,也是存一組數,只不過是它一旦建立了,就不能修改了,只能做 切片 跟 查詢,所以只叫 只讀列表 語法: name = ("Rogers", &q ...

  7. cocos多点触控实效注意事项

    一定要设置AppController.mm的 [eaglView setMultipleTouchEnabled:YES];

  8. .NET涉及的一些名词

    本文在最为概略的层次上对.NET涉及的一些名词进行解释, 包括: 通用语言基础架构(Common Language Infrastructure, CLI). 虚拟执行系统(Virtual Execu ...

  9. js jquery实时计算输入字符

    在项目中需要倒还可以输入多少字符

  10. iOS RSA加密解密及签名验证

    1.首先要下载openssl,这个不用说,直接官网下载或者用brew install openssl下载 2.终端生成私钥密钥 2.1生成私钥 openssl genrsa - 2.2生成密钥 ope ...