(Oracle) 입력시 빈값('') 넣으면 자동으로 Null 처리 됨 MSSQL_MDB_Oracle

관련 자료를 아직 많이 찾아본것은 아니라 정확한 것은 모르겠지만,
아무튼 몇번 테스트를 해보았는데, 빈값을 넣으면 자동으로 null 값으로 처리된다.

데이타베이스에서 빈값('') 과 널값(Null) 은 완전히 다른 의미다.
사전적 의미로 'null' 은 '아무 가치 없는 결과', '무효의' 같은 의미이다.
즉, 그 자체가 아무 의미가 없다는 뜻이며, 빈값 조차도 없다는 것을 의미한다.
데이타베이스에서 말하는 빈값('') 은 null 이 아니지만 값은 없는 상태이다.

MS-SQL 의 경우에는 쿼리에서 빈값으로 지정해서 입력을 해주면 빈값으로 저장이 된다.
하지만, 이번 테스트 결과에 따르면 오라클(Oracle)에서는 빈값으로 쿼리를 처리해도 null 로 처리가 되었다.

데이타베이스 원리에 대해 정확히 모르기는 하지만 약간의 분석을 해보자면,
데이타베이스의 자료를 입출력 하기 위해 각종 쿼리를 처리할때, null 값인 컬럼(column) 은 굳이 처리할 필요가 없다.
즉, 아예 손을 대지 않기 때문에, 그만큼 처리 속도를 빠르게 할 수 있다.
그러나, 빈값('') 이라도 넣어주려 하면 그 컬럼에 손을 대야 하기 때문에 처리 속도는 그만큼 느려지게 된다.
데이타의 양이 적을때는 상관없겠지만, 데이타의 양이 많아지면 이런 소소한 문제 조차도 전체 성능을 좌우하는 문제이기도 하다.
아마도, 그런 이유 때문에 오라클은 최적 성능을 발휘하기 위해 이런 방법을 쓴것은 아닐까 생각된다.
데이타를 처리하는 프로그램 언어에서는 널(null)값과 빈값('') 을 처리하는 방법이 완전히 틀리기 때문에, 사용자가 빈값('') 을 넣겠다는데 자동으로 null(널) 처리 하는 것은 뭔가 합당하지 않아 보인다.
물론, 그렇게 자동으로 처리된다는 규칙이라면, 나름 그것에 익숙해지면 나중에는 더 편해질수 있을런지도 모를 일이기는 하다.

관련 자료를  찾아 보았으나, 궁금증을 시원하게 풀어줄만한 글을 찾기는 힘들었다.




덧글

댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.


통계 위젯 (화이트)

1091531
9847
10318439

google_myblogSearch_side

▷검색어

Flag Counter style2