문득 테이블을 만들 때 개념이 헷갈렸다.

ABAP의 도메인 개념과 SQL의 도메인 개념은 비슷한건가? 

 

도메인에 ZEENUM을 넣는 것을 보면 개념이 같지는 않다는 것은 느껴지지만, 비슷하다고 느껴졌다.

ABAP의 도메인이 좀 더 상위개념인 느낌?

 

그래서 알아본 결과, 

ABAP과 SQL의 공통점은 *값의 형식과 제약*을 정의한다는 점이이다.

항목 ABAP의 Domain SQL의 Domain
의미 필드의 데이터 타입, 길이, 포맷, 값 범위(Value Range) 를 정의하는 객체 사용자 정의 데이터 타입처럼 특정 컬럼에 적용되는 형식과 제약 조건
사용 목적 여러 Data Element가 공통 속성(타입, 범위) 을 공유할 수 있게 함 여러 테이블에서 일관된 제약 조건을 사용 가능하게 함
예시 ZEENUM → NUMC(8), Value Range(00000001 ~ 99999999) CREATE DOMAIN age_domain AS INT CHECK (value >= 0 AND value <= 120);

 

차이점은 APAB은 "Domain + Data Element + Field" 구조로 계층적이라는 점이다.

텍스트, 단위, 설명, 도움말도 추가정보로 연결한다.

결론적으로는 ABAP도메인은 SQL의 domain과 목적은 비슷하지만, 데이터 형식 +.제약의 재사용 가능한 객체다.

 

+ Recent posts