2주일간 일하고 오늘 드디어 퇴근 한시간을 앞두고 끝내려던 일이 있었음
이게 디비 테이블에 인서트를 해야돼. 그래서 디비를 까봄.
봣더니 컬럼 세개중 하나만 0이 아닌 값으로 채워져 있고 나머지는 0이 아닌 값이 잇는 테이불임
근데 테이블 선언을 보니 디폴트는 모두 널인거임.
그래서 내가 걍 하나만 셋팅해서 인서트하고 나머지 두컬럼은 널이 되게 하려니까 오래 이회사에 있던 내 아랫놈이 그러면 뭔가 망가질것 같다네
그래서 내가 소스코드 리포에 있는거 다 뒤져보니 딱 파일 두개에서 그걸 써. 그중하나가 생성잔데 미친게 거기서 디비 디폴트 널값대신 0을 쳐넣는거야
내가 아랫놈 한테 저거 두군데만 고치면 되는거 아니냐니까... 이 미친것들이 어디 PHP로 된거에서 고치기도 하고 직접 손으로 쿼리날리는 미친놈들도 있데 ㅋㅋㅋ
시발 열받아서 월요일부터 다 때려 부시기로 하고 맥주 한잔 하러옴
한줄요약: 정상적으로 한시간이면 마무리 질 일이 언제 끝날지 모르는 일로 변함. 먼저 똥산 개쉐퀴덜 다 잡아다 족치고 싶다
이게 디비 테이블에 인서트를 해야돼. 그래서 디비를 까봄.
봣더니 컬럼 세개중 하나만 0이 아닌 값으로 채워져 있고 나머지는 0이 아닌 값이 잇는 테이불임
근데 테이블 선언을 보니 디폴트는 모두 널인거임.
그래서 내가 걍 하나만 셋팅해서 인서트하고 나머지 두컬럼은 널이 되게 하려니까 오래 이회사에 있던 내 아랫놈이 그러면 뭔가 망가질것 같다네
그래서 내가 소스코드 리포에 있는거 다 뒤져보니 딱 파일 두개에서 그걸 써. 그중하나가 생성잔데 미친게 거기서 디비 디폴트 널값대신 0을 쳐넣는거야
내가 아랫놈 한테 저거 두군데만 고치면 되는거 아니냐니까... 이 미친것들이 어디 PHP로 된거에서 고치기도 하고 직접 손으로 쿼리날리는 미친놈들도 있데 ㅋㅋㅋ
시발 열받아서 월요일부터 다 때려 부시기로 하고 맥주 한잔 하러옴
한줄요약: 정상적으로 한시간이면 마무리 질 일이 언제 끝날지 모르는 일로 변함. 먼저 똥산 개쉐퀴덜 다 잡아다 족치고 싶다
오타네. 세개중 두갠 0 하난 0이 아닌값
가급적컬럼에 null이 들어가지 않게 스키마를 작성하는게 좋은데... 실제로 dba라는 애들중에 null 0 \'\'을 막 섞어놓는 애들이 적지 않음. null에도 업무의미를 담고 0에도 어떤 의미를 담고... 이러다 나중에 유지보수하면 잘되던 부분이 안돌아가고 디비에서 뽑아온 null을 어디서는 0으로 또 어디서는 \'\'로 간주하고 이게 view로 넘어감.
그러면 view에서는 업데이트 칠때 또 0 \'\' 을 그냥 서버로 넘기고 서버에서 그쪽 고치는 애는 그냥 view에서 넘겨준대로 걍 때려박음. 그럼 또 이상하게 작동하니까 이제는 select하는 쿼리 가서 0이면 \'\'로 바꿔서 넘기고.. 아주 쌩쑈를 함.ㅎㅎ
이렇게 두어바퀴 돌고나면 쿼리는 쿼리대로 null 0 \'\'이 여기저기 일관성 없이 캐스팅하고, 비즈니스 코드는 그 값들을 되는대로 막 바꿔서 뷰로 넘김. 여기서 왜 null을 0으로 바꾸는지 알수가 없고 뷰에서 넘겨준 0이 디비로 바로 들어가도 되는 값인지 아니면 null로 바꿔야 하는지 파악이 안됨.
이 무개녀들이 디폴트 값을 주려면 디비에서 주던지 해야지 생성자에서 주고 지랄하니 이게 바꾸면 뭐가 눈제가 될지 모룸
우와 열받겠당
허다한 케이스 ㅇㅇ