小编Har*_*ora的帖子

如何在固定格式RPG中查询表并使用if条件检查记录?

因此,假设表 ##TAB 有一列 #VALUE,其中包含“SDM”和“LB”作为条目。列大小为 12 个字符。我想使用固定格式 RPG 查询表,并稍后在 IF 条件下进行比较。逻辑很简单,但我不确定语法。

如果它是自由格式,我可以简单地将记录放入游标中,在循环中获取数据,然后在获得匹配的记录时离开。但是,我不确定我们是否可以使用固定格式的 SQL,否则我将不得不做一个链(仍然不知道语法)。

 exec sql                                      
    Declare C1 cursor for                      
      Select #VALUE from ##TAB;         
                                                
  exec sql                                      
    Open C1;                                    
                                                
  Dou sqlcod <> 0;                              
  exec sql                                      
    Fetch C1 INTO :valueRes;                      
                           
    If (valueRes <> userVal); // userVal is what we get from user     
      Leave; //or set some flag to 0 to indicate               
    Endif;                
         
  Enddo;                  
                           
  exec sql                
    Close C1; 
Run Code Online (Sandbox Code Playgroud)

或者我们可以通过子例程来完成,并返回 true/false 或 1/0 来指示是否找到记录。

在发布答案时,请同时包含变量声明。

db2 rpg rpgle ibm-midrange rational-developer-for-i

-1
推荐指数
1
解决办法
366
查看次数

标签 统计

db2 ×1

ibm-midrange ×1

rational-developer-for-i ×1

rpg ×1

rpgle ×1