zoukankan      html  css  js  c++  java
  • 操作vsam用sequential访问模式REWRITE数据

    因为在SEQUENTIAL访问模式下,只有I/O方式打开文件才能进行REWRITE操作,所以以下文件均用I/O方式打开。 

    FILE-CONTROL.                      
             SELECT VFILE ASSIGN TO VF  
             ORGANIZATION IS INDEXED    
             ACCESS MODE IS SEQUENTIAL  
             RECORD KEY IS VID          
             FILE STATUS IS FS1.        
     DATA DIVISION.                     
     FILE SECTION.                      
     FD VFILE.                          
     01 VREC.                           
        05 VID PIC X(4).                
        05 VINFO PIC X(76).             
     WORKING-STORAGE SECTION.           
     01 FS1 PIC 99.                     
     01 REC PIC X(80).                  
     01 FLAG PIC X.                       

    PROCEDURE DIVISION.                                    
             OPEN I-O VFILE.                                
             DISPLAY FS1.                                   
             MOVE 0444 TO VID.                              
             MOVE '0444D02APPLE' TO REC.                    
             START VFILE KEY IS = VID.                      
             READ VFILE  
             END-READ.                                      
             REWRITE VREC FROM REC                          
             END-REWRITE.                                   
             DISPLAY FS1.                                   
             IF FS1 = 00                                    
             THEN                                           
                  DISPLAY 'THE RECORD IS ', VREC            
             END-IF.                                        
             CLOSE VFILE.                                   
             STOP RUN.        

    总结

    SEQUENTIAL三步曲:

    1.start

    2.read(因为rewrite之前必须read,不然就返回码43,而要想read指定记录就需要先start定位到指定的位置上,所以……)

    3.rewrite……from……(from也是必须的,这是逻辑上的需要,相信聪明的童靴都会懂的) 或者 delete……                              

  • 相关阅读:
    反射
    如何通过反射调用对象的方法?
    简述一下面向对象的”六原则一法则”。
    用Java写一个单例类。
    什么是UML?
    UML中有哪些常用的图?
    用Java写一个折半查找。
    两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
    构造器(constructor)是否可被重写(override)?
    用最有效率的方法计算2乘以8?
  • 原文地址:https://www.cnblogs.com/mooncher/p/2746442.html
Copyright © 2011-2022 走看看