웹 개발 한걸음
[MySQL] NULL은 IS NULL이다. // ** 문제해결 **
Egu99
2021. 3. 9. 15:37
** 문제 인식
회원가입 기능을 만드는 중 성별의 input 태그의 name에 오타가 나 DB에 NULL로 저장이 되었다.
userGender가 NULL인 튜플들의 성별을 여성으로 바꿔주려고 한다.
** 1차, 2차 시도
안된다.
-> 이렇게 하면 문자열이 NULL인 튜플들이 수정이 되어버린다.
** 3차 시도
예전에 where in을 써 본 기억이 어렴풋이 있어 다수의 튜플을 수정하려면 그걸 써야하나? 싶어서 써봄
안된다. 일단 where in은 뒤에 괄호 ( ) 가 있어야한다.
** 4차 시도
안된다.
-> 안되는 이유는 1,2차 이유와 같다.
-> 또한 where in은 이런 용도로 쓰는 것이 아니다. where절에서 다수의 값들을 조건으로 할 때 사용하는 문법이다.
** 해결!
- 구글링을 해봐도 정확히 어떤 걸 검색해야할지 몰라 한참을 끙끙하다 결국 친한 웹개발자 T군에게 물어보았다.
- 아 그렇지! NULL은 =가 아닌 IS를 써야한다!
- IS를 쓰니 잘 된다! 너무도 쉬운 답이었다.
- IS와 더불어 항상 업데이트 전엔 select로 타겟을 확인 한번 해보라는 조언도 함께 배웠고 그제야 제대로 업데이트가 되었다!
♣ 참고 및 인용