Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1560070
  • 博文数量: 201
  • 博客积分: 2812
  • 博客等级: 少校
  • 技术积分: 3029
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-18 18:28
个人简介

从事数据库工作多年,目前看好分布式NeSQL/HTAP数据库在企业客户市场的发展。未来的主要方向是——致力于 NewSQL/HTAP 数据库的推广普及。

文章存档

2016年(1)

2015年(8)

2014年(23)

2013年(50)

2012年(32)

2011年(87)

分类: Sybase

2014-03-20 16:35:50

      在这篇文章中将向大家介绍如何编写IQ LOAD TABLE语句实现从数据文件中装载部分列数据的方法。下面将结合一个具体的例子加以说明。
1. 创建示例表
    drop table if exists load_test;
    create table load_test (id int, name char(8),age tinyint, address char(20) , primary key(id) ) ;

2. 准备示例数据文件
--load_test.dat
10|aaaaa|30|beijing
12|bbbbb|20|shanghai
18|ccccc|10|tianjin

3. 编写load table语句
在这个示例中,打算只装载id和age列数据,而忽略name和address列数据。针对这一需求的load table语句如下:
--load_test.sql
LOAD TABLE load_test
(
 id '|',
 filler('|'),
 age '|',
 filler('\n')
)
FROM '/home/sybiq/load_test.dat'
FORMAT ASCII
ESCAPES OFF
QUOTES OFF
NOTIFY 500000
WITH CHECKPOINT ON;
    
说明:IQ的load table语句可以使用filler跳过不需要装载的列。
使用dbisql执行上面的load table语句:
    dbisql -c "uid=tpch_user;pwd=tpch_pwd" -nogui load_test.sql 
阅读(2897) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~