首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用DFSORT将10位字符数据转换为DB2 BIGINT类型

使用DFSORT将10位字符数据转换为DB2 BIGINT类型
EN

Stack Overflow用户
提问于 2016-04-02 17:07:30
回答 1查看 577关注 0票数 0

我想将一个包含数字数据的10位字符字段转换为一个8字节的二进制文件,以便插入到DB2 BIGINT字段中。

代码语言:javascript
复制
INPUT
-------
1531245800ABC
1531457890DEF

OUTPUT
-------
<8 byte numeric data>ABC
<8 byte numeric data>DEF

负载卡

代码语言:javascript
复制
LOAD DATA                      
LOG NO                       
REPLACE                      
UNICODE  CCSID(01208,00000,00000)
SORTDEVT SYSDA               
SORTNUM 12                   
INTO TABLE                   
<TABLE-NAME>                
KEEPDICTIONARY               
(                               
QUOTEID   POSITION (1) 
BIGINT   
,                              
GEO                             
POSITION (     9  )  CHAR MIXED(3))      
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-02 18:14:56

使用DFSORT符号,使您和未来的用户更容易:

代码语言:javascript
复制
//TOBIGINT EXEC PGM=SORT 
//SYMNAMES DD * 
INPUT-CHARACTER-NUMERIC,1,10,ZD 
INPUT-CHARACTER-REST,*,3,CH 
//SYMNOUT DD SYSOUT=*
//SYSOUT   DD SYSOUT=* 
//SORTOUT  DD SYSOUT=* 
//SYSIN    DD * 
  OPTION COPY 

  INREC BUILD=(INPUT-CHARACTER-NUMERIC,
                TO=BI, 
                LENGTH=8, 
               INPUT-CHARACTER-REST) 
//SORTIN   DD * 
1531245800ABC 
1531457890DEF 

或传统的开始编码、长度编码、类型编码:

代码语言:javascript
复制
//TOBIGINT EXEC PGM=SORT 
//SYSOUT   DD SYSOUT=* 
//SORTOUT  DD SYSOUT=* 
//SYSIN    DD * 
  OPTION COPY 

  INREC BUILD=(1,10,ZD, 
                TO=BI, 
                LENGTH=8, 
                11,3) 
//SORTIN   DD * 
1531245800ABC 
1531457890DEF 

输出为X'000000005B44F4E8‘,其次为ABC,X'000000005B483162’,其次是DEF。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36376293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档