항상 하는 이야기지만 SAP에서는 null 이라는 데이터는 없습니다. 데이터의 타입에 따라서 데이터가 들어가지요. 예를 들자면 char로 선언하면 ' ' 이 들어가고 date 이면 '00000000' 이 들어가는 식입니다. 이것을 is initial 등을 사용하면 ABAP에서 알아서 char 일 때는 = ' ' 로 변환해주고 date일 때는 = '00000000' 등으로 변환해 줍니다.
그런데 최근 이상한 쿼리를 만났습니다. = '' 라는 식으로 where 절에 쓴 것들이 자주 보이더군요. 되짚어 보면 저도 이렇게 많이 쓴것 같구요. 하지만 char라고 전제했을 때 = ' ' 와 = '' 는 엄연히 다른데이터로 알고 있습니다. (실제 oracle에서는 어떤지 모르겠네요.)
여튼 그런 의문이 있어서 ST05에서 실제로 어떻게 되는지 테스트 해보니... = '' 라고 쿼리를 주면
라고 되어서 = ' '로 변환해서 쿼리를 oracle로 보내는 것을 확인했습니다.
'SAP > ABAP' 카테고리의 다른 글
ALV DISPLAY화면에 SCREEN 1000 넣기 (0) | 2014.08.25 |
---|---|
SMW0 (0) | 2014.08.25 |
message 띄우기.. (0) | 2010.07.19 |
테이블 Lock걸렸을때 (0) | 2010.07.19 |
동적 인터널 테이블( Dynamic Internal Table ) (0) | 2008.06.03 |