Programming/ABAP
DELETE vs CLEAR vs REFRESH vs FREE
_syd
2023. 8. 8. 23:22
Internal Table 에서 데이터를 삭제하는 방법들인 Delete, Clear, Refresh, Free 는 각각 차이가 존재한다.
위 사진에서,
FREE 는 할당된 메모리를 모두 삭제하고, DELETE 는 그대로 유지하는 것을 확인 할 수 있다.
CLEAR 와 REFRESH 는 할당된 메모리를 해제하고 internal table 을 초기 크기로 설정한다는 공통점이 있다.
하지만, REFRESH 는 header line 을 삭제할 수 없고, CLEAR는 header line과 work area 모두 삭제할 수 있다는 차이점이 존재한다.
요약
DELETE | 메모리 상관 없이 입력된 데이터만 삭제 |
REFRESH | itab[]에 해당하는 body만 삭제(structure 삭제 불가) |
CLEAR | itab[] 라고 명시할 경우 body 만 삭제, itab 인 경우 body, header 모두 삭제 |
FREE | header, body, 메모리 모두 삭제 |
참고
DELETE vs CLEAR vs REFRESH vs FREE
DELETE CLEAR REFRESH FREE These are different ways of deleting all data from an internal table. They look the same. But they aren’t.
abapinho.com
728x90