데이터베이스에서 NULL을 허용할 것인가, 허용하지 않을 것인가


데이터베이스에서 NULL을 허용할 것인가, 허용하지 않을 것인가

아침에 팀원 한 사람과 DB 모델을 검토하면서 null 얘기가 나왔다. 난 새로운 클라우드 서비스를 설계하면서 모든 컬럼에 not null을 사용했다. 이견이 있을 수 있겠지만, 이전까지의 프로그래밍 경험에 비춰봤을 때 개인적으론 not null이 훨씬 이득이 많다고 생각했기 때문이다. 매번 null 여부를 체크해서 blank나 0으로 변환하는 것도 귀찮고, where 절이나 group by 절에 nvl 또는 isnull로 체크하는 것도 문제가 있고, null 체크를 안했다가 결과값이 엉뚱하게 나오는 경우도 종종 있어서 새로운 DB 모델에서는 아예 not null로 하고 default 값을 지정해줬다. 아래 링크는 이병국 님이 쓴 null에 관한 이야기이다. 참고 개발자들의 영원한 숙제 ‘NULL 이야기..


원문링크 : 데이터베이스에서 NULL을 허용할 것인가, 허용하지 않을 것인가