Database Cursor是一个数据库暂存区, 将经SELECT指令读取的记录存放至此暂存区,
再由此暂存区放至Work Area中, 可见少数据库读取的次数.
1.开启 Database Cursor
语法:
OPEN CURSOR <c> FOR SELECT … WHERE <condition>
Example:
TABLES SPFLI.
DATA: WA LIKE SPFLI,
C1 TYPE CURSOR.
OPEN CURSOR C1 FOR SELECT * FROM SPFLI
WHERE AREA =’TAIWAN’.
2.读取 Database Cursor的资料存入 Work Area
语法:
FETCH NEXT CURSOR <c> INTO <wa>
Example:
FETCH NEXT CURSOR C1 INTO WA.
读取下一笔Cursor位置的数据存入 WA, 如果已无资料可读,
SY-SUBRC 不传回 0
关闭 Database Cursor
语法:
CLOSE CURSOR <c>
Example:
CLOSE CURSOR C1.