针对数据结构的AS400 RPGLE /免费嵌入式SQL

时间:2017-01-26 18:38:18

标签: ibm-midrange db2-400 rpgle

我想知道是否可以针对数据结构而不是文件执行SQL。

例如,我有一个包含100个字段的外部数据结构,假设命名约定为field1,field2等.....数据结构名称为DS1。 DS1结构传递给程序,所有100个字段都包含值。我想知道是否可以做这样的事情:

/free
  exec sql                 
  update DS1 set field1 = field2;  
/end-free

我不确定是否可以查询数据结构而不是将磁盘转到实际文件,但如果是,它会使事情变得更快更简单。

谢谢!

1 个答案:

答案 0 :(得分:2)

简单回答,不。

您要求的最近的事情是使用VALUES INTO声明。

 d myDS            ds                  qualified
 d  fld1                         10a
 d  fld2                         10a


  /free
    myDS.fld1 = 'HELLO';
    exec sql
       values (:myDS.fld1) into :myds.fld2;

    dsply myDS.fld2;
    *INLR = *ON;
    return;
  /end-free     

当一个简单的myDS.fld2 = myDS.fld1;足够时,为什么你想这样做是超出我的。我认为这与您的其他问题有关:AS400 RPGLE/free dynamic variables in operations