DELETE데이터베이스 테이블에서 행을 삭제할 때 사용

1. 단일 행 삭제

DELETE FROM scarr WHERE carrid = 'AA'.

- carrid가 'AA'인 행을 DB에서 삭제

 

2. 구조체(워크 에어리어) 사용해서 삭제

DATA: gs_scarr TYPE scarr.
gs_scarr-carrid = 'AA'.
DELETE scarr FROM gs_scarr.

 

 

3. 내부 테이블로 여러 행 삭제

DATA: gt_scarr TYPE STANDARD TABLE OF scarr,
      gs_scarr TYPE scarr.

gs_scarr-carrid = 'AA'.
APPEND gs_scarr TO gt_scarr.

gs_scarr-carrid = 'AF'.
APPEND gs_scarr TO gt_scarr.

DELETE scarr FROM TABLE gt_scarr.

 

 

4. 삭제 후 확인 

SELECT SINGLE * FROM scarr INTO gs_scarr WHERE carrid = 'AA'.
IF sy-subrc <> 0.
  WRITE: / 'AA 항공사 삭제 완료!'.
ELSE.
  WRITE: / 'AA 항공사가 아직 존재함.'.
ENDIF.

 

 

⚠️ 주의할 점

 

  • DELETE scarr. ← 이렇게 조건 없이 쓰면 모든 데이터가 삭제됨 (절대 X)
명령어 설명
DELETE FROM ... WHERE 조건 걸어서 직접 삭제
DELETE ... FROM wa 구조체 값으로 삭제 (키 기준)
DELETE ... FROM TABLE 내부 테이블을 기준으로 여러 행 삭제

'SAP' 카테고리의 다른 글

easy abap 15. 효율적인 SQL 구문 작성  (0) 2025.05.09
easy abap 14. modify  (0) 2025.05.09
easy abap 12. Update  (0) 2025.05.09
easy abap 11. INSERT  (0) 2025.05.09
easy abap 10. select - join & 그 외 문법  (0) 2025.05.09

+ Recent posts