码迷,mamicode.com
首页 > 数据库 > 详细

Sybase中的load table的用法

时间:2017-12-25 13:47:36      阅读:385      评论:0      收藏:0      [点我收藏+]

标签:mobile   com   option   upd   文件   bfc   内容   name   文件路径   

Sybase中的load table的用法

用sybase iq作为数据仓库的存储,确实有其独特的特点和优势,但是在数据ETL的时候,如果用insert、update方式,速度太慢,大概是2秒钟左右一条数据。好在iq提供了一条load语句来解决这个问题。

load语句的格式: 
[code]LOAD TABLE [ owner ].table-name
[ ( load-specification, ... ) ]FROM filename-string, ...
[ FORMAT { ‘ascii‘ | ‘binary‘ } ]
... [ DELIMITED BY string ]
... [ STRIP { ON | OFF } ]
... [ QUOTES { ON | OFF } ]
... [ ESCAPES { ON | OFF } ]
[ ESCAPE CHARACTER character ] 
[ WITH CHECKPOINT ON|OFF ]
... [ load-options ][/code]

下面是从一个文本文件load到表F_INN_IA_DAILY_SUM中的语句:

set temporary option date_order=YMD;
Load Table F_INN_IA_DAILY_SUM
(
ORG_SID +|+, 
DEAL_SID +|+, 
ALL_TIME_SID +|+, 
R_COUNT_DIM_SID +|+, 
T_TAX_STOR_COST +|+, 
T_STOR_COST +|+, 
T_STOR_SUM +|+, 
CREATED_DT X0A
)
From /load_data/F_Inn_IA_Daily_Sum.txt
ESCAPES OFF
QUOTES OFF
NOTIFY 100000
WITH CHECKPOINT ON;
COMMIT

其中+|+是字段的分隔符,X0A是记录的分隔符,即回车(文本文件中)。

例一:

1,文本文件的内容格式为:

abc|defgh|aaaa|bbbbbb|ccccc|ddddd|eeee|fffF
abc|defgh|aaaa|bbbbbb|ccccc|ddddd|eeee|fffF 
abc|defgh|aaaa|bbbbbb|ccccc|ddddd|eeee|fffF

2,load table语句:

Load table  My_Table
(
ORG_SID                      |, 
DEAL_SID                     |, 
ALL_TIME_SID              |, 
R_COUNT_DIM_SID      |, 
T_TAX_STOR_COST    |, 
T_STOR_COST            |, 
T_STOR_SUM              |, 
CREATED_DT              \X0A         --数据文件中每行的换行符(16进制)
)
From  /load_data/loadTest.txt       ---要加载文件的路径
ESCAPES OFF
QUOTES OFF
NOTIFY 100000
WITH CHECKPOINT ON;
COMMIT;

文件以‘|’作为分隔符,每行的换行符以 ‘\X0A‘换行; 通常的换行有‘\x0d\x0a‘(回车、换行)   或‘\x0A‘ (换行);

load table  语法写入存储过程,然后直接调用存储过程文件即可加载入库;

例二:

1,文本格式为:

20171222|&@001731edae78|&@absent|&@absent|&@001731edae78|&@|
20171222|&@001bb958bc07|&@absent|&@absent|&@001bb958bc07|&@|
20171222|&@001bfc067636|&@absent|&@absent|&@001bfc067636|&@|

2,load table 语句:

set temporary option CONVERSION_ERROR = OFF; 
load table t_station_match_result(load_dt |&@ null(//xd0),op_station |&@ null(//xd0),ip |&@ null(//xd0),mac |&@ null(//xd0), mobile |&@|  null(‘‘) )
FROM " + file_path+"
ESCAPES OFF
QUOTES OFF     
NOTIFY 100000 
WITH CHECKPOINT ON; 
file_path:txt文件路径(绝对路径)

 

Sybase中的load table的用法

标签:mobile   com   option   upd   文件   bfc   内容   name   文件路径   

原文地址:http://www.cnblogs.com/lizm166/p/8108475.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!